QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#33211#1813. Joy with PermutationsWu_RenWA 153ms4192kbC++171.1kb2022-05-30 08:25:352024-04-09 18:56:47

Judging History

你现在查看的是最新测评结果

  • [2024-04-09 18:56:47]
  • 管理员手动重测本题所有提交记录
  • 测评结果:WA
  • 用时:153ms
  • 内存:4192kb
  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2022-05-30 08:25:38]
  • 评测
  • 测评结果:0
  • 用时:847ms
  • 内存:4008kb
  • [2022-05-30 08:25:35]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;
int n,a[5],p[60010];
vector<int>B,S;
int qry(int x,int y,int z){
	printf("? 1 %d %d %d\n",x,y,z),fflush(stdout);
	scanf("%d",&x);
	return x;
}
int qry2(int x,int y){
	printf("? 2 %d %d\n",x,y),fflush(stdout);
	scanf("%d",&x);
	return x;
}
int main(){
	scanf("%d",&n);
	a[1]=qry(2,3,4),a[2]=qry(1,3,4),a[3]=qry(1,2,4),a[4]=a[1]^a[2]^a[3];
	int smn=min({a[1],a[2],a[3],a[4]}),smx=max({a[1],a[2],a[3],a[4]});
	for(int i=1;i<=4;i++) ((a[i]^smx)?B:S).push_back(i);
	for(int i=5;i<=n;i++){
		int x=qry(S[1],i,B[1]);
		if(smn>x){
			p[S[0]]=smn,smn=x;
			S[0]=i;
		}
		else if(smn==x){
			p[S[1]]=x,S[1]=i;
			smn=qry(S[0],i,B[0]);
		}
		else if(x<smx){
			p[i]=x;
		}
		else if(x==smx){
			p[B[1]]=x,B[1]=i;
			smx=qry(S[0],i,B[0]);
		}
		else{
			p[B[0]]=x,smx=x;
			B[0]=i;
		}
	}
	if(qry2(B[0],B[1])^B[0]) swap(B[0],B[1]);
	if(qry2(S[0],S[1])^S[0]) swap(S[0],S[1]);
	p[B[0]]=n-1,p[B[1]]=n,p[S[0]]=1,p[S[1]]=2;
	printf("! ");
	for(int i=1;i<=n;i++) printf("%d ",p[i]);puts(""),fflush(stdout);
}

详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 3960kb

input:

5
4
3
3
2
3
4

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 3
? 2 2 3
? 2 5 4
! 3 5 4 1 2 

result:

ok OK (4 2)

Test #2:

score: 0
Accepted
time: 141ms
memory: 4192kb

input:

60000
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
15
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
34
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
42
43
43
44
44
45
45
46
46
47
47
48
48
49
49
50
50
51
51
52
52
53
5...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 2
? 1 3 5 1
? 1 4 6 5
? 1 3 6 1
? 1 4 7 6
? 1 3 7 1
? 1 4 8 7
? 1 3 8 1
? 1 4 9 8
? 1 3 9 1
? 1 4 10 9
? 1 3 10 1
? 1 4 11 10
? 1 3 11 1
? 1 4 12 11
? 1 3 12 1
? 1 4 13 12
? 1 3 13 1
? 1 4 14 13
? 1 3 14 1
? 1 4 15 14
? 1 3 15 1
? 1 4 16 15
? 1 3 16 1
? 1 4 17 1...

result:

ok OK (119995 2)

Test #3:

score: 0
Accepted
time: 121ms
memory: 4184kb

input:

60000
59999
59999
59998
59998
59997
59997
59996
59996
59995
59995
59994
59994
59993
59993
59992
59992
59991
59991
59990
59990
59989
59989
59988
59988
59987
59987
59986
59986
59985
59985
59984
59984
59983
59983
59982
59982
59981
59981
59980
59980
59979
59979
59978
59978
59977
59977
59976
59976
59975
...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 2 5 4
? 1 1 5 3
? 1 5 6 4
? 1 1 6 3
? 1 6 7 4
? 1 1 7 3
? 1 7 8 4
? 1 1 8 3
? 1 8 9 4
? 1 1 9 3
? 1 9 10 4
? 1 1 10 3
? 1 10 11 4
? 1 1 11 3
? 1 11 12 4
? 1 1 12 3
? 1 12 13 4
? 1 1 13 3
? 1 13 14 4
? 1 1 14 3
? 1 14 15 4
? 1 1 15 3
? 1 15 16 4
? 1 1 16 3
? 1 16 17 ...

result:

ok OK (119995 2)

Test #4:

score: 0
Accepted
time: 35ms
memory: 3876kb

input:

28238
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
15
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
34
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
42
43
43
44
44
45
45
46
46
47
47
48
48
49
49
50
50
51
51
52
52
53
5...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 2
? 1 3 5 1
? 1 4 6 5
? 1 3 6 1
? 1 4 7 6
? 1 3 7 1
? 1 4 8 7
? 1 3 8 1
? 1 4 9 8
? 1 3 9 1
? 1 4 10 9
? 1 3 10 1
? 1 4 11 10
? 1 3 11 1
? 1 4 12 11
? 1 3 12 1
? 1 4 13 12
? 1 3 13 1
? 1 4 14 13
? 1 3 14 1
? 1 4 15 14
? 1 3 15 1
? 1 4 16 15
? 1 3 16 1
? 1 4 17 1...

result:

ok OK (56471 2)

Test #5:

score: 0
Accepted
time: 42ms
memory: 3936kb

input:

13205
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
15
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
34
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
42
43
43
44
44
45
45
46
46
47
47
48
48
49
49
50
50
51
51
52
52
53
5...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 2
? 1 3 5 1
? 1 4 6 5
? 1 3 6 1
? 1 4 7 6
? 1 3 7 1
? 1 4 8 7
? 1 3 8 1
? 1 4 9 8
? 1 3 9 1
? 1 4 10 9
? 1 3 10 1
? 1 4 11 10
? 1 3 11 1
? 1 4 12 11
? 1 3 12 1
? 1 4 13 12
? 1 3 13 1
? 1 4 14 13
? 1 3 14 1
? 1 4 15 14
? 1 3 15 1
? 1 4 16 15
? 1 3 16 1
? 1 4 17 1...

result:

ok OK (26405 2)

Test #6:

score: 0
Accepted
time: 153ms
memory: 3980kb

input:

56108
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
15
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
34
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
42
43
43
44
44
45
45
46
46
47
47
48
48
49
49
50
50
51
51
52
52
53
5...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 2
? 1 3 5 1
? 1 4 6 5
? 1 3 6 1
? 1 4 7 6
? 1 3 7 1
? 1 4 8 7
? 1 3 8 1
? 1 4 9 8
? 1 3 9 1
? 1 4 10 9
? 1 3 10 1
? 1 4 11 10
? 1 3 11 1
? 1 4 12 11
? 1 3 12 1
? 1 4 13 12
? 1 3 13 1
? 1 4 14 13
? 1 3 14 1
? 1 4 15 14
? 1 3 15 1
? 1 4 16 15
? 1 3 16 1
? 1 4 17 1...

result:

ok OK (112211 2)

Test #7:

score: 0
Accepted
time: 79ms
memory: 4092kb

input:

34446
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
15
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
34
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
42
43
43
44
44
45
45
46
46
47
47
48
48
49
49
50
50
51
51
52
52
53
5...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 2
? 1 3 5 1
? 1 4 6 5
? 1 3 6 1
? 1 4 7 6
? 1 3 7 1
? 1 4 8 7
? 1 3 8 1
? 1 4 9 8
? 1 3 9 1
? 1 4 10 9
? 1 3 10 1
? 1 4 11 10
? 1 3 11 1
? 1 4 12 11
? 1 3 12 1
? 1 4 13 12
? 1 3 13 1
? 1 4 14 13
? 1 3 14 1
? 1 4 15 14
? 1 3 15 1
? 1 4 16 15
? 1 3 16 1
? 1 4 17 1...

result:

ok OK (68887 2)

Test #8:

score: 0
Accepted
time: 104ms
memory: 4148kb

input:

48565
2
2
3
3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
11
11
12
12
13
13
14
14
15
15
16
16
17
17
18
18
19
19
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
27
28
28
29
29
30
30
31
31
32
32
33
33
34
34
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
42
43
43
44
44
45
45
46
46
47
47
48
48
49
49
50
50
51
51
52
52
53
5...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 2
? 1 3 5 1
? 1 4 6 5
? 1 3 6 1
? 1 4 7 6
? 1 3 7 1
? 1 4 8 7
? 1 3 8 1
? 1 4 9 8
? 1 3 9 1
? 1 4 10 9
? 1 3 10 1
? 1 4 11 10
? 1 3 11 1
? 1 4 12 11
? 1 3 12 1
? 1 4 13 12
? 1 3 13 1
? 1 4 14 13
? 1 3 14 1
? 1 4 15 14
? 1 3 15 1
? 1 4 16 15
? 1 3 16 1
? 1 4 17 1...

result:

ok OK (97125 2)

Test #9:

score: 0
Accepted
time: 41ms
memory: 3952kb

input:

26055
26054
26054
26053
26053
26052
26052
26051
26051
26050
26050
26049
26049
26048
26048
26047
26047
26046
26046
26045
26045
26044
26044
26043
26043
26042
26042
26041
26041
26040
26040
26039
26039
26038
26038
26037
26037
26036
26036
26035
26035
26034
26034
26033
26033
26032
26032
26031
26031
26030
...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 2 5 4
? 1 1 5 3
? 1 5 6 4
? 1 1 6 3
? 1 6 7 4
? 1 1 7 3
? 1 7 8 4
? 1 1 8 3
? 1 8 9 4
? 1 1 9 3
? 1 9 10 4
? 1 1 10 3
? 1 10 11 4
? 1 1 11 3
? 1 11 12 4
? 1 1 12 3
? 1 12 13 4
? 1 1 13 3
? 1 13 14 4
? 1 1 14 3
? 1 14 15 4
? 1 1 15 3
? 1 15 16 4
? 1 1 16 3
? 1 16 17 ...

result:

ok OK (52105 2)

Test #10:

score: 0
Accepted
time: 75ms
memory: 3892kb

input:

35907
35906
35906
35905
35905
35904
35904
35903
35903
35902
35902
35901
35901
35900
35900
35899
35899
35898
35898
35897
35897
35896
35896
35895
35895
35894
35894
35893
35893
35892
35892
35891
35891
35890
35890
35889
35889
35888
35888
35887
35887
35886
35886
35885
35885
35884
35884
35883
35883
35882
...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 2 5 4
? 1 1 5 3
? 1 5 6 4
? 1 1 6 3
? 1 6 7 4
? 1 1 7 3
? 1 7 8 4
? 1 1 8 3
? 1 8 9 4
? 1 1 9 3
? 1 9 10 4
? 1 1 10 3
? 1 10 11 4
? 1 1 11 3
? 1 11 12 4
? 1 1 12 3
? 1 12 13 4
? 1 1 13 3
? 1 13 14 4
? 1 1 14 3
? 1 14 15 4
? 1 1 15 3
? 1 15 16 4
? 1 1 16 3
? 1 16 17 ...

result:

ok OK (71809 2)

Test #11:

score: 0
Accepted
time: 5ms
memory: 3776kb

input:

8640
8639
8639
8638
8638
8637
8637
8636
8636
8635
8635
8634
8634
8633
8633
8632
8632
8631
8631
8630
8630
8629
8629
8628
8628
8627
8627
8626
8626
8625
8625
8624
8624
8623
8623
8622
8622
8621
8621
8620
8620
8619
8619
8618
8618
8617
8617
8616
8616
8615
8615
8614
8614
8613
8613
8612
8612
8611
8611
8610
...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 2 5 4
? 1 1 5 3
? 1 5 6 4
? 1 1 6 3
? 1 6 7 4
? 1 1 7 3
? 1 7 8 4
? 1 1 8 3
? 1 8 9 4
? 1 1 9 3
? 1 9 10 4
? 1 1 10 3
? 1 10 11 4
? 1 1 11 3
? 1 11 12 4
? 1 1 12 3
? 1 12 13 4
? 1 1 13 3
? 1 13 14 4
? 1 1 14 3
? 1 14 15 4
? 1 1 15 3
? 1 15 16 4
? 1 1 16 3
? 1 16 17 ...

result:

ok OK (17275 2)

Test #12:

score: 0
Accepted
time: 69ms
memory: 3948kb

input:

27481
27480
27480
27479
27479
27478
27478
27477
27477
27476
27476
27475
27475
27474
27474
27473
27473
27472
27472
27471
27471
27470
27470
27469
27469
27468
27468
27467
27467
27466
27466
27465
27465
27464
27464
27463
27463
27462
27462
27461
27461
27460
27460
27459
27459
27458
27458
27457
27457
27456
...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 2 5 4
? 1 1 5 3
? 1 5 6 4
? 1 1 6 3
? 1 6 7 4
? 1 1 7 3
? 1 7 8 4
? 1 1 8 3
? 1 8 9 4
? 1 1 9 3
? 1 9 10 4
? 1 1 10 3
? 1 10 11 4
? 1 1 11 3
? 1 11 12 4
? 1 1 12 3
? 1 12 13 4
? 1 1 13 3
? 1 13 14 4
? 1 1 14 3
? 1 14 15 4
? 1 1 15 3
? 1 15 16 4
? 1 1 16 3
? 1 16 17 ...

result:

ok OK (54957 2)

Test #13:

score: 0
Accepted
time: 53ms
memory: 4076kb

input:

30992
30991
30991
30990
30990
30989
30989
30988
30988
30987
30987
30986
30986
30985
30985
30984
30984
30983
30983
30982
30982
30981
30981
30980
30980
30979
30979
30978
30978
30977
30977
30976
30976
30975
30975
30974
30974
30973
30973
30972
30972
30971
30971
30970
30970
30969
30969
30968
30968
30967
...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 2 5 4
? 1 1 5 3
? 1 5 6 4
? 1 1 6 3
? 1 6 7 4
? 1 1 7 3
? 1 7 8 4
? 1 1 8 3
? 1 8 9 4
? 1 1 9 3
? 1 9 10 4
? 1 1 10 3
? 1 10 11 4
? 1 1 11 3
? 1 11 12 4
? 1 1 12 3
? 1 12 13 4
? 1 1 13 3
? 1 13 14 4
? 1 1 14 3
? 1 14 15 4
? 1 1 15 3
? 1 15 16 4
? 1 1 16 3
? 1 16 17 ...

result:

ok OK (61979 2)

Test #14:

score: -100
Wrong Answer
time: 100ms
memory: 4040kb

input:

60000
29402
29401
29401
29403
29401
29400
29399
29403
29404
29405
29399
29398
29405
29406
29407
29407
29408
29397
29397
29396
29409
29409
29410
29411
29395
29411
29412
29413
29395
29394
29393
29413
29414
29393
29392
29391
29391
29390
29389
29415
29415
29416
29389
29388
29387
29387
29386
29417
29385
...

output:

? 1 2 3 4
? 1 1 3 4
? 1 1 2 4
? 1 4 5 3
? 1 4 6 3
? 1 1 6 5
? 1 6 7 3
? 1 6 8 3
? 1 7 8 5
? 1 6 9 8
? 1 6 10 8
? 1 7 10 9
? 1 10 11 8
? 1 7 11 9
? 1 10 12 11
? 1 10 13 11
? 1 7 13 12
? 1 10 14 13
? 1 10 15 13
? 1 14 15 12
? 1 15 16 13
? 1 15 17 13
? 1 14 17 16
? 1 15 18 17
? 1 15 19 17
? 1 15 20 17
...

result:

wrong answer wrong answer