# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1102973 | 2024-10-19T09:43:59 Z | Pioneer | 정렬하기 (IOI15_sorting) | C++17 | 25 ms | 592 KB |
#include "sorting.h" #include <bits/stdc++.h> using namespace std; const int MAX=200000; int n,m; int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) { n=N,m=M; vector<int> v(n),need(n); vector<pair<int,int>> swaps; for(int i=0;i<n;i++)v[i]=S[i],need[i]=i; for(int i=0;i<m;i++){ swap(v[X[i]],v[Y[i]]); vector<int> tov=need; for(int j=i+1;j<m;j++){ swap(tov[X[j]],tov[Y[j]]); } // cout<<"! "<<X[i]<<" "<<Y[i]<<"\n"; // for(int j=0;j<n;j++)cout<<tov[j]<<" "; // cout<<"\n"; // for(int j=0;j<n;j++)cout<<v[j]<<" "; // cout<<"\n"; // cout<<"\n"; vector<int> tov1(n); for(int i=0;i<n;i++)tov1[tov[i]]=i; swap(tov,tov1); bool ok=0; for(int k=0;k<n;k++){ if(tov[k]!=v[k]){ for(int j=0;j<n;j++){ if(tov[j]==v[k]){ ok=1; swaps.push_back({k,j}); swap(v[k],v[j]); break; } } if(ok)break; } if(ok)break; } // tov=need; // for(int j=i+1;j<m;j++){ // swap(tov[X[j]],tov[Y[j]]); // } // for(int j=0;j<n;j++)cout<<tov[j]<<" "; // cout<<"\n"; // for(int j=0;j<n;j++)cout<<v[j]<<" "; // cout<<"\n"; // cout<<"\n"; if(!ok)swaps.push_back({0,0}); } // for(int i=1) // for(int x:v)cout<<x<<" "; // cout<<"\n"; assert(v==need); for(int i=0;i<m;i++){ P[i]=swaps[i].first; Q[i]=swaps[i].second; } return M; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 336 KB | Output is correct |
2 | Correct | 1 ms | 336 KB | Output is correct |
3 | Correct | 1 ms | 336 KB | Output is correct |
4 | Incorrect | 1 ms | 336 KB | Output isn't correct |
5 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 336 KB | Output is correct |
2 | Correct | 1 ms | 336 KB | Output is correct |
3 | Correct | 1 ms | 336 KB | Output is correct |
4 | Incorrect | 1 ms | 336 KB | Output isn't correct |
5 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 508 KB | Output is correct |
2 | Correct | 1 ms | 336 KB | Output is correct |
3 | Correct | 5 ms | 336 KB | Output is correct |
4 | Correct | 5 ms | 336 KB | Output is correct |
5 | Correct | 5 ms | 336 KB | Output is correct |
6 | Correct | 1 ms | 508 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 336 KB | Output is correct |
2 | Correct | 1 ms | 336 KB | Output is correct |
3 | Correct | 1 ms | 336 KB | Output is correct |
4 | Incorrect | 1 ms | 336 KB | Output isn't correct |
5 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 25 ms | 592 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 25 ms | 592 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |