# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1025340 | 2024-07-16T22:19:36 Z | tolbi | Xor Sort (eJOI20_xorsort) | C++17 | 41 ms | 1120 KB |
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main(){ ios::sync_with_stdio(false); cin.tie(0); int n,s;cin>>n>>s; vector<int> arr(n); for (int i = 0; i < n; ++i) { cin>>arr[i]; } vector<pair<int,int>> ansarr; for (int bit = 19; bit >= 0; bit--){ for (int i = 0; i+1 < n; i++){ if (arr[i]&(1LL<<bit)){ if (arr[i+1]&(1LL<<bit)){ ansarr.push_back({i+1,i+2}); arr[i]^=arr[i+1]; } else { ansarr.push_back({i+2,i+1}); ansarr.push_back({i+1,i+2}); arr[i+1]^=arr[i]; arr[i]^=arr[i+1]; } } } if (n>1 && arr[n-1]&(1LL<<bit)){ n--; } } cout<<ansarr.size()<<endl; for (int i = 0; i < ansarr.size(); ++i) { cout<<ansarr[i].first<<" "<<ansarr[i].second<<endl; } }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 344 KB | Output is correct |
2 | Correct | 1 ms | 600 KB | Output is correct |
3 | Incorrect | 2 ms | 344 KB | Not sorted |
4 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 344 KB | Output is correct |
2 | Correct | 1 ms | 600 KB | Output is correct |
3 | Incorrect | 2 ms | 344 KB | Not sorted |
4 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Correct | 1 ms | 456 KB | Output is correct |
3 | Correct | 2 ms | 348 KB | Output is correct |
4 | Correct | 6 ms | 604 KB | Output is correct |
5 | Correct | 32 ms | 872 KB | Output is correct |
6 | Correct | 31 ms | 988 KB | Output is correct |
7 | Correct | 30 ms | 1056 KB | Output is correct |
8 | Correct | 31 ms | 1064 KB | Output is correct |
9 | Correct | 31 ms | 980 KB | Output is correct |
10 | Correct | 31 ms | 984 KB | Output is correct |
11 | Correct | 32 ms | 956 KB | Output is correct |
12 | Correct | 33 ms | 1024 KB | Output is correct |
13 | Correct | 33 ms | 988 KB | Output is correct |
14 | Correct | 33 ms | 1112 KB | Output is correct |
15 | Correct | 41 ms | 1120 KB | Output is correct |