QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#383914 | #1813. Joy with Permutations | Crysfly | WA | 226ms | 3992kb | C++17 | 1.8kb | 2024-04-09 18:47:57 | 2024-04-09 18:57:43 |
Judging History
answer
// what is matter? never mind.
//#pragma GCC optimize("Ofast")
//#pragma GCC optimize("unroll-loops")
//#pragma GCC target("sse,sse2,sse3,sse4,popcnt,abm,mmx,avx,avx2")
#include<bits/stdc++.h>
#define For(i,a,b) for(int i=(a);i<=(b);++i)
#define Rep(i,a,b) for(int i=(a);i>=(b);--i)
#define ll long long
//#define int long long
#define ull unsigned long long
#define SZ(x) ((int)((x).size()))
#define ALL(x) (x).begin(),(x).end()
using namespace std;
inline int read()
{
char c=getchar();int x=0;bool f=0;
for(;!isdigit(c);c=getchar())f^=!(c^45);
for(;isdigit(c);c=getchar())x=(x<<1)+(x<<3)+(c^48);
if(f)x=-x;return x;
}
#define fi first
#define se second
#define pb push_back
#define mkp make_pair
typedef pair<int,int>pii;
typedef vector<int>vi;
#define maxn 2000005
#define inf 0x3f3f3f3f
int n,res[maxn];
vi p,q;
int Q(vi o){
cout<<"? "<<1<<" ";
for(int x:o)cout<<x<<" ";
cout<<endl;
int x;cin>>x;return x;
}
signed main()
{
cin>>n;
vi w;
For(i,1,4){
vi o;
For(j,1,4) if(i!=j) o.pb(j);
w.pb(Q(o));
}
vi p={1,2,3,4};
sort(ALL(p),[&](int x,int y){return w[x-1]>w[y-1];});
int a,b,c,d,l,r;
// [a,b]=(l),[c,d]=(r)
a=p[0],b=p[1],c=p[2],d=p[3];
r=w[a-1],l=w[d-1];
For(i,5,n){
int x=Q({a,c,i});
if(x>l && x<r) {
res[i]=x;
continue;
}
if(x<=l){
if(x<l) res[b]=l,b=i;
else res[a]=l,a=i,l=Q({a,b,d});
}else{
if(x>r) res[d]=r,d=i;
else res[c]=r,c=i,r=Q({a,c,d});
}
}
cout<<"? "<<2<<" "<<a<<" "<<b<<endl;
int x;cin>>x;
if(x==a) res[a]=1,res[b]=2;
else res[a]=2,res[b]=1;
cout<<"? "<<2<<" "<<c<<" "<<d<<endl;
cin>>x;
if(x==c) res[c]=n-1,res[d]=n;
else res[c]=n,res[d]=n-1;
cout<<"! ";For(i,1,n)cout<<res[i]<<" "; cout<<endl;
return 0;
}
/*
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3752kb
input:
5 4 3 3 4 3 2 4 3
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 2 5 ? 1 5 4 3 ? 2 5 4 ? 2 2 3 ! 3 5 4 1 2
result:
ok OK (6 2)
Test #2:
score: 0
Accepted
time: 226ms
memory: 3724kb
input:
60000 2 2 3 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...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 3 1 5 ? 1 3 5 2 ? 1 3 5 6 ? 1 3 6 2 ? 1 3 6 7 ? 1 3 7 2 ? 1 3 7 8 ? 1 3 8 2 ? 1 3 8 9 ? 1 3 9 2 ? 1 3 9 10 ? 1 3 10 2 ? 1 3 10 11 ? 1 3 11 2 ? 1 3 11 12 ? 1 3 12 2 ? 1 3 12 13 ? 1 3 13 2 ? 1 3 13 14 ? 1 3 14 2 ? 1 3 14 15 ? 1 3 15 ...
result:
ok OK (119996 2)
Test #3:
score: 0
Accepted
time: 223ms
memory: 3812kb
input:
60000 59999 59999 59998 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 ...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 3 5 ? 1 5 2 4 ? 1 5 3 6 ? 1 6 2 4 ? 1 6 3 7 ? 1 7 2 4 ? 1 7 3 8 ? 1 8 2 4 ? 1 8 3 9 ? 1 9 2 4 ? 1 9 3 10 ? 1 10 2 4 ? 1 10 3 11 ? 1 11 2 4 ? 1 11 3 12 ? 1 12 2 4 ? 1 12 3 13 ? 1 13 2 4 ? 1 13 3 14 ? 1 14 2 4 ? 1 14 3 15 ? 1 15 2 ...
result:
ok OK (119996 2)
Test #4:
score: 0
Accepted
time: 120ms
memory: 3716kb
input:
28238 2 2 3 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...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 3 1 5 ? 1 3 5 2 ? 1 3 5 6 ? 1 3 6 2 ? 1 3 6 7 ? 1 3 7 2 ? 1 3 7 8 ? 1 3 8 2 ? 1 3 8 9 ? 1 3 9 2 ? 1 3 9 10 ? 1 3 10 2 ? 1 3 10 11 ? 1 3 11 2 ? 1 3 11 12 ? 1 3 12 2 ? 1 3 12 13 ? 1 3 13 2 ? 1 3 13 14 ? 1 3 14 2 ? 1 3 14 15 ? 1 3 15 ...
result:
ok OK (56472 2)
Test #5:
score: 0
Accepted
time: 52ms
memory: 3540kb
input:
13205 2 2 3 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...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 3 1 5 ? 1 3 5 2 ? 1 3 5 6 ? 1 3 6 2 ? 1 3 6 7 ? 1 3 7 2 ? 1 3 7 8 ? 1 3 8 2 ? 1 3 8 9 ? 1 3 9 2 ? 1 3 9 10 ? 1 3 10 2 ? 1 3 10 11 ? 1 3 11 2 ? 1 3 11 12 ? 1 3 12 2 ? 1 3 12 13 ? 1 3 13 2 ? 1 3 13 14 ? 1 3 14 2 ? 1 3 14 15 ? 1 3 15 ...
result:
ok OK (26406 2)
Test #6:
score: 0
Accepted
time: 195ms
memory: 3752kb
input:
56108 2 2 3 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...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 3 1 5 ? 1 3 5 2 ? 1 3 5 6 ? 1 3 6 2 ? 1 3 6 7 ? 1 3 7 2 ? 1 3 7 8 ? 1 3 8 2 ? 1 3 8 9 ? 1 3 9 2 ? 1 3 9 10 ? 1 3 10 2 ? 1 3 10 11 ? 1 3 11 2 ? 1 3 11 12 ? 1 3 12 2 ? 1 3 12 13 ? 1 3 13 2 ? 1 3 13 14 ? 1 3 14 2 ? 1 3 14 15 ? 1 3 15 ...
result:
ok OK (112212 2)
Test #7:
score: 0
Accepted
time: 105ms
memory: 3736kb
input:
34446 2 2 3 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...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 3 1 5 ? 1 3 5 2 ? 1 3 5 6 ? 1 3 6 2 ? 1 3 6 7 ? 1 3 7 2 ? 1 3 7 8 ? 1 3 8 2 ? 1 3 8 9 ? 1 3 9 2 ? 1 3 9 10 ? 1 3 10 2 ? 1 3 10 11 ? 1 3 11 2 ? 1 3 11 12 ? 1 3 12 2 ? 1 3 12 13 ? 1 3 13 2 ? 1 3 13 14 ? 1 3 14 2 ? 1 3 14 15 ? 1 3 15 ...
result:
ok OK (68888 2)
Test #8:
score: 0
Accepted
time: 162ms
memory: 3944kb
input:
48565 2 2 3 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...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 3 1 5 ? 1 3 5 2 ? 1 3 5 6 ? 1 3 6 2 ? 1 3 6 7 ? 1 3 7 2 ? 1 3 7 8 ? 1 3 8 2 ? 1 3 8 9 ? 1 3 9 2 ? 1 3 9 10 ? 1 3 10 2 ? 1 3 10 11 ? 1 3 11 2 ? 1 3 11 12 ? 1 3 12 2 ? 1 3 12 13 ? 1 3 13 2 ? 1 3 13 14 ? 1 3 14 2 ? 1 3 14 15 ? 1 3 15 ...
result:
ok OK (97126 2)
Test #9:
score: 0
Accepted
time: 64ms
memory: 3672kb
input:
26055 26054 26054 26053 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 ...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 3 5 ? 1 5 2 4 ? 1 5 3 6 ? 1 6 2 4 ? 1 6 3 7 ? 1 7 2 4 ? 1 7 3 8 ? 1 8 2 4 ? 1 8 3 9 ? 1 9 2 4 ? 1 9 3 10 ? 1 10 2 4 ? 1 10 3 11 ? 1 11 2 4 ? 1 11 3 12 ? 1 12 2 4 ? 1 12 3 13 ? 1 13 2 4 ? 1 13 3 14 ? 1 14 2 4 ? 1 14 3 15 ? 1 15 2 ...
result:
ok OK (52106 2)
Test #10:
score: 0
Accepted
time: 106ms
memory: 3952kb
input:
35907 35906 35906 35905 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 ...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 3 5 ? 1 5 2 4 ? 1 5 3 6 ? 1 6 2 4 ? 1 6 3 7 ? 1 7 2 4 ? 1 7 3 8 ? 1 8 2 4 ? 1 8 3 9 ? 1 9 2 4 ? 1 9 3 10 ? 1 10 2 4 ? 1 10 3 11 ? 1 11 2 4 ? 1 11 3 12 ? 1 12 2 4 ? 1 12 3 13 ? 1 13 2 4 ? 1 13 3 14 ? 1 14 2 4 ? 1 14 3 15 ? 1 15 2 ...
result:
ok OK (71810 2)
Test #11:
score: 0
Accepted
time: 61ms
memory: 3640kb
input:
8640 8639 8639 8638 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 ...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 3 5 ? 1 5 2 4 ? 1 5 3 6 ? 1 6 2 4 ? 1 6 3 7 ? 1 7 2 4 ? 1 7 3 8 ? 1 8 2 4 ? 1 8 3 9 ? 1 9 2 4 ? 1 9 3 10 ? 1 10 2 4 ? 1 10 3 11 ? 1 11 2 4 ? 1 11 3 12 ? 1 12 2 4 ? 1 12 3 13 ? 1 13 2 4 ? 1 13 3 14 ? 1 14 2 4 ? 1 14 3 15 ? 1 15 2 ...
result:
ok OK (17276 2)
Test #12:
score: 0
Accepted
time: 104ms
memory: 3688kb
input:
27481 27480 27480 27479 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 ...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 3 5 ? 1 5 2 4 ? 1 5 3 6 ? 1 6 2 4 ? 1 6 3 7 ? 1 7 2 4 ? 1 7 3 8 ? 1 8 2 4 ? 1 8 3 9 ? 1 9 2 4 ? 1 9 3 10 ? 1 10 2 4 ? 1 10 3 11 ? 1 11 2 4 ? 1 11 3 12 ? 1 12 2 4 ? 1 12 3 13 ? 1 13 2 4 ? 1 13 3 14 ? 1 14 2 4 ? 1 14 3 15 ? 1 15 2 ...
result:
ok OK (54958 2)
Test #13:
score: 0
Accepted
time: 70ms
memory: 3728kb
input:
30992 30991 30991 30990 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 ...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 3 5 ? 1 5 2 4 ? 1 5 3 6 ? 1 6 2 4 ? 1 6 3 7 ? 1 7 2 4 ? 1 7 3 8 ? 1 8 2 4 ? 1 8 3 9 ? 1 9 2 4 ? 1 9 3 10 ? 1 10 2 4 ? 1 10 3 11 ? 1 11 2 4 ? 1 11 3 12 ? 1 12 2 4 ? 1 12 3 13 ? 1 13 2 4 ? 1 13 3 14 ? 1 14 2 4 ? 1 14 3 15 ? 1 15 2 ...
result:
ok OK (61980 2)
Test #14:
score: -100
Wrong Answer
time: 93ms
memory: 3992kb
input:
60000 29402 29401 29401 29402 29402 29403 29400 29400 29404 29404 29400 29404 29404 29404 29400 29400 29404 29404 29404 29400 29404 29404 29400 29400 29404 29400 29400 29400 29400 29404 29404 29400 29400 29400 29404 29400 29404 29404 29400 29404 29404 29404 29404 29404 29404 29404 29400 29404 29400 ...
output:
? 1 2 3 4 ? 1 1 3 4 ? 1 1 2 4 ? 1 1 2 3 ? 1 1 2 5 ? 1 1 5 3 ? 1 1 5 6 ? 1 1 5 7 ? 1 1 5 8 ? 1 1 5 9 ? 1 1 5 10 ? 1 1 5 11 ? 1 1 5 12 ? 1 1 5 13 ? 1 1 5 14 ? 1 1 5 15 ? 1 1 5 16 ? 1 1 5 17 ? 1 1 5 18 ? 1 1 5 19 ? 1 1 5 20 ? 1 1 5 21 ? 1 1 5 22 ? 1 1 5 23 ? 1 1 5 24 ? 1 1 5 25...
result:
wrong answer wrong answer