QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#508489#7660. Investigating Frog Behaviour on Lily Pad PatternsPoknikTL 133ms17868kbC++141.0kb2024-08-07 16:27:202024-08-07 16:27:21

Judging History

This is the latest submission verdict.

  • [2024-08-07 16:27:21]
  • Judged
  • Verdict: TL
  • Time: 133ms
  • Memory: 17868kb
  • [2024-08-07 16:27:20]
  • Submitted

answer

#include<bits/stdc++.h>
#define INF 300100
#define maxx 100000007
#define pi 3.14159265359
using namespace std;
typedef long long LL;
set<int> emptypos;
int pos[INF]={0};
int qing[INF]={0};
int myfind(int x)
{
	for(int i=1;i<=INF;i++)
	{
		if(pos[i]==x)
		{
			return i;
		}
	}
}
int main()
{
//    ios::sync_with_stdio(false);
//    cin.tie(0);
//    cout.tie(0);
	//freopen("in.txt","r",stdin);
	int n;
	scanf("%d",&n);
	int x;
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&x);
		pos[x]=i;
		qing[i]=x;
	}
	for(int i=1;i<=qing[n];i++)
	{
		if(pos[i]==0)
			emptypos.insert(i);
	}
//    set<int>::iterator it;
//    for(it=emptypos.begin();it!=emptypos.end();it++)
//        cout<<*it<<" ";
	for(int i=qing[n]+1;i<=INF;i++)
		emptypos.insert(i);
	int t;
	scanf("%d",&t);
	while(t--)
	{
		scanf("%d",&x);
		int xx=qing[x];
		int y=*upper_bound(emptypos.begin(),emptypos.end(),xx);
		printf("%d\n",y);
		emptypos.erase(y);
		emptypos.insert(xx);
		pos[y]=x;
		pos[xx]=0;
		qing[x]=y;
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 65ms
memory: 17808kb

input:

5
1 2 3 5 7
3
1
2
4

output:

4
6
8

result:

ok 3 lines

Test #2:

score: 0
Accepted
time: 66ms
memory: 17828kb

input:

5
1 2 3 5 7
4
1
1
1
1

output:

4
6
8
9

result:

ok 4 lines

Test #3:

score: 0
Accepted
time: 133ms
memory: 17868kb

input:

5
1 2 3 4 5
20
1
4
4
3
5
3
3
5
2
2
5
4
1
4
2
3
1
5
3
3

output:

6
7
8
4
7
5
9
10
3
4
11
10
7
12
5
10
8
13
11
14

result:

ok 20 lines

Test #4:

score: -100
Time Limit Exceeded

input:

10
2 4 6 7 8 9 10 12 13 14
1000
4
5
4
6
2
5
2
9
6
10
6
2
1
3
7
3
9
5
2
10
8
7
6
7
4
7
9
4
4
4
5
2
6
1
10
9
10
3
7
10
5
9
5
8
4
8
10
9
1
7
10
8
10
6
7
7
10
8
1
2
9
10
2
3
8
7
2
7
2
2
1
10
3
3
2
8
9
6
10
1
7
9
10
6
5
9
9
6
4
9
10
3
3
10
5
4
8
5
8
4
9
5
5
3
9
7
5
5
4
6
1
8
6
7
9
2
2
4
9
3
6
4
6
8
4
4
3...

output:


result: