Task: | Sorting |
Sender: | stephan |
Submission time: | 2021-01-30 04:44:35 +0200 |
Language: | C++ (C++11) |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | WRONG ANSWER | 0 |
#2 | WRONG ANSWER | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | WRONG ANSWER | 0.01 s | 1, 2 | details |
#2 | WRONG ANSWER | 0.02 s | 2 | details |
#3 | WRONG ANSWER | 0.01 s | 1, 2 | details |
#4 | WRONG ANSWER | 0.01 s | 1, 2 | details |
Code
///By Stephan Ramirez dsramirezc@unal.edu.co#include<bits/stdc++.h>#define ms(a,v) memset(a,v,sizeof a)#define ll long long#define N 105#define MAXN 20004using namespace std;int T;int n;int arr[N];int pos[N];void sw(int x,int y){swap(arr[x],arr[y]);swap(arr[x+1],arr[y+1]);pos[arr[x]]=x;pos[arr[x+1]]=x+1;pos[arr[y]]=y;pos[arr[y+1]]=y+1;}int main(){ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);#ifdef LOCALfreopen("in.txt","r",stdin);//freopen("out.txt","w",stdout) ;#endifcin>>T;while(T--){cin>>n;for(int i=0;i<n;i++){cin>>arr[i];arr[i]--;pos[arr[i]]=i;}for(int j=0;j<n+n;j++){for(int i=0;i<n;i++){if(pos[i]==i)continue;if(pos[i]==i+1){if(i+3<n-1){sw(i+1,i+3);i--;continue;}sw(i,0);break;}if(pos[i]==n-1){if(i<=n-4){sw(n-4,n-2);i--;continue;}sw(n-2,0);break;}sw(pos[i],i);}}bool f=true;for(int i=0;i<n;i++){if(pos[i]!=i)f=false;}if(f)cout<<"YES\n";elsecout<<"NO\n";}return 0;}
Test details
Test 1
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
153 1 1 2 1 2 ... |
correct output |
---|
YES YES NO NO NO ... |
user output |
---|
YES YES NO NO NO ... Truncated |
Test 2
Group: 2
Verdict: WRONG ANSWER
input |
---|
1000 59 35 29 32 50 11 15 9 21 19 45 2... |
correct output |
---|
YES NO YES NO YES ... |
user output |
---|
NO NO NO NO NO ... Truncated |
Test 3
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
720 6 1 6 4 5 2 3 6 6 3 2 1 5 4 ... |
correct output |
---|
YES NO NO NO YES ... |
user output |
---|
NO NO NO NO YES ... Truncated |
Test 4
Group: 1, 2
Verdict: WRONG ANSWER
input |
---|
1000 8 7 4 2 8 6 3 5 1 8 3 8 2 7 5 4 6 1 ... |
correct output |
---|
NO NO YES NO YES ... |
user output |
---|
NO NO NO NO NO ... Truncated |