Submission #1180050

#TimeUsernameProblemLanguageResultExecution timeMemory
1180050vladkonovalXor Sort (eJOI20_xorsort)C++20
0 / 100
0 ms324 KiB
#include <bits/stdc++.h> using namespace std; #define endl '\n' using ll = long long; ll n,k,i,a[1007]; vector<pair<ll,ll>> res; int main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); cin>>n>>k; if (k==1) { for (i=1;i<=n;i++) cin>>a[i]; for (i=1;i<=n;i++) { if (a[i]<=a[i-1]) { if (min(a[i]^a[i-1],a[i]^a[i+1])>a[i-1]) { a[i] = min(a[i]^a[i-1],a[i]^a[i+1]); if (min(a[i]^a[i-1],a[i]^a[i+1])==a[i]^a[i-1]) res.push_back({i,i-1}); else res.push_back({i,i+1}); } else { a[i] = max(a[i]^a[i-1],a[i]^a[i+1]); if (max(a[i]^a[i-1],a[i]^a[i+1])==a[i]^a[i-1]) res.push_back({i,i-1}); else res.push_back({i,i+1}); } } } cout<<res.size()<<endl; for (auto x:res) cout<<x.first<<' '<<x.second<<endl; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...