Submission #1302259

#TimeUsernameProblemLanguageResultExecution timeMemory
1302259nicolo_010Sorting (IOI15_sorting)C++20
16 / 100
3 ms580 KiB
#include <bits/stdc++.h> #include "sorting.h" using namespace std; using ll = long long; using pii = pair<int, int>; const int MOD = 1e9+7; int findSwapPairs(int n, int* s, int m, int* x, int* y, int* p, int* q) { int id=0; vector<int> a(n); for (int i=0; i<n; i++) { a[i] = s[i]; } for (int i=0; i<n-1; i++) { int mx=a[0]; int idx=0; for (int j=0; j<n-i; j++) { if (a[j] > mx) { idx = j; mx = a[j]; } } if (idx == n-1-i) continue; swap(a[x[id]], a[y[id]]); m--; mx=a[0]; idx=0; for (int j=0; j<n-i; j++) { if (a[j] > mx) { idx = j; mx = a[j]; } } swap(a[idx], a[n-i-1]); p[id] = idx; q[id] = n-i-1; id++; } if (a[0] < a[1]) { if (m&1) { p[id] = 0; q[id] = 1; id++; } } else { if (m%2==0) { p[id] = 0; q[id] = 1; id++; } } return id; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...