# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
434632 | 2021-06-21T13:31:25 Z | dxz05 | 정렬하기 (IOI15_sorting) | C++14 | 4 ms | 588 KB |
#include "sorting.h" #include <bits/stdc++.h> using namespace std; const int MAXN = 1024; int a[MAXN]; vector<pair<int, int>> ans; void Do(int i, int j){ swap(a[i], a[j]); ans.emplace_back(i, j); } void Do2(){ swap(a[0], a[1]); } int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) { for (int i = 0; i < N; i++) a[i] = S[i]; Do2(); for (int i = 2; i < N; i++){ if (a[i] == 0){ for (int j = 0; j < 2; j++){ if (a[j] > 1){ Do(i, j); break; } } } } Do2(); for (int i = 2; i < N; i++){ if (a[i] == 1){ for (int j = 0; j < 2; j++){ if (a[j] > 1){ Do(i, j); break; } } } } for (int i = 2; i < N; i++){ int j = i; while (j < N && a[j] != i) j++; j--; if (i != j){ Do(i, j); Do2(); } } for (int i = 0; i < 10; i++){ Do(0, 1); Do2(); } for (int i = 0; i < ans.size(); i++){ bool ok = true; for (int j = 0; j < N; j++){ if (S[j] != j) ok = false; } if (ok) return i; P[i] = ans[i].first; Q[i] = ans[i].second; swap(S[0], S[1]); swap(S[P[i]], S[Q[i]]); } return ans.size(); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 204 KB | Output is correct |
2 | Correct | 1 ms | 204 KB | Output is correct |
3 | Incorrect | 1 ms | 204 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 204 KB | Output is correct |
2 | Correct | 1 ms | 204 KB | Output is correct |
3 | Incorrect | 1 ms | 204 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 204 KB | Output is correct |
2 | Incorrect | 1 ms | 204 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 204 KB | Output is correct |
2 | Correct | 1 ms | 204 KB | Output is correct |
3 | Incorrect | 1 ms | 204 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 4 ms | 588 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 4 ms | 588 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |