Submission #440868

#TimeUsernameProblemLanguageResultExecution timeMemory
440868MrDebooXor Sort (eJOI20_xorsort)C++17
0 / 100
589 ms524292 KiB
#include <bits/stdc++.h> #define int long long #define mod 1000000007 #define endl '\n' using namespace std; signed main(){ ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); int n,s; cin>>n>>s; int arr[n]; for(int i=0;i<n;i++){ cin>>arr[i]; } vector<pair<int,int>>vct; bool bl; do{ bl=false; for(int i=0;i<n;i++){ if(i>0&&((arr[i]<=arr[i-1]&&(arr[i]^arr[i-1])>arr[i])||(i<n-1&&arr[i]>=arr[i+1]&&(arr[i]^arr[i-1])<arr[i]))){vct.push_back({i+1,i});bl=true;arr[i]^=arr[i-1];} if(i<n-1&&((i>0&&arr[i]<=arr[i-1]&&(arr[i]^arr[i+1])>arr[i])||(arr[i]>=arr[i+1]&&(arr[i]^arr[i+1])<arr[i]))){vct.push_back({i+1,i+2});bl=true;arr[i]^=arr[i+1];} } //for(int i=0;i<n;i++)cout<<arr[i]<<' '; //cout<<endl; }while(bl); cout<<vct.size()<<endl; for(auto i:vct)cout<<i.first<<' '<<i.second<<endl; } //5 1 1 1 6 5 //5 5 6 5 6
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...