Submission #774726

#TimeUsernameProblemLanguageResultExecution timeMemory
774726huutuanXor Sort (eJOI20_xorsort)C++14
0 / 100
1 ms212 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define sz(x) ((int)x.size()) #define sumof(x) accumulate(all(x), 0ll) const int N=1001; int n, s, a[N]; void solve(int tc){ // cout << "Case #" << tc << ": "; vector<pair<int, int>> v; cin >> n >> s; for (int i=1; i<=n; ++i) cin >> a[i]; for (int i=19; i>=0; --i){ int idx=1; while (idx<=n && !(a[idx]>>i&1)) ++idx; for (int j=idx+1; j<=n; ++j) if (!(a[j]>>i&1)){ v.emplace_back(j, j-1); a[j]^=a[j-1]; } } cout << sz(v) << '\n'; for (auto& i:v) cout << i.first << ' ' << i.second << '\n'; } int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); int ntests=1; // cin >> ntests; for (int i=1; i<=ntests; ++i) solve(i); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...