제출 #669704

#제출 시각아이디문제언어결과실행 시간메모리
669704victor_gao정렬하기 (IOI15_sorting)C++17
16 / 100
1 ms468 KiB
#include "sorting.h" #include <bits/stdc++.h> #define MAXN 200015 using namespace std; int bk[MAXN],pos_bk[MAXN],pre[MAXN],pos_pre[MAXN]; int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) { for (int i=0;i<N;i++){ bk[i]=i; pos_bk[i]=i; pre[i]=S[i]; pos_pre[S[i]]=i; } for (int i=N-1;i>=0;i--){ swap(bk[X[i]],bk[Y[i]]); pos_bk[bk[X[i]]]=X[i]; pos_bk[bk[Y[i]]]=Y[i]; } for (int i=0;i<N;i++){ swap(pre[X[i]],pre[Y[i]]); pos_pre[pre[X[i]]]=X[i]; pos_pre[pre[Y[i]]]=Y[i]; swap(bk[X[i]],bk[Y[i]]); pos_bk[bk[X[i]]]=X[i]; pos_bk[bk[Y[i]]]=Y[i]; int now=i+1; /* cout<<"Now : "; for (int j=0;j<N;j++) cout<<pre[j]<<" \n"[j==N-1]; cout<<"pos_pre : "; for (int j=0;j<N;j++) cout<<pos_pre[j]<<" \n"[j==N-1]; cout<<"from back : "; for (int j=0;j<N;j++) cout<<bk[j]<<" \n"[j==N-1]; cout<<"from back pos : "; for (int j=0;j<N;j++) cout<<pos_bk[j]<<" \n"[j==N-1]; cout<<"swap "<<pos_pre[now]<<" "<<pos_bk[now]<<'\n'; */ P[i]=pos_pre[now]; Q[i]=pos_bk[now]; swap(pre[pos_pre[now]],pre[pos_bk[now]]); pos_pre[pre[pos_pre[now]]]=pos_pre[now]; pos_pre[pre[pos_bk[now]]]=pos_bk[now]; } return N; }

컴파일 시 표준 에러 (stderr) 메시지

sorting.cpp: In function 'int findSwapPairs(int, int*, int, int*, int*, int*, int*)':
sorting.cpp:6:39: warning: unused parameter 'M' [-Wunused-parameter]
    6 | int findSwapPairs(int N, int S[], int M, int X[], int Y[], int P[], int Q[]) {
      |                                   ~~~~^
#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...