제출 #1286821

#제출 시각아이디문제언어결과실행 시간메모리
1286821Faisal_Saqib정렬하기 (IOI15_sorting)C++20
컴파일 에러
0 ms0 KiB
#include "sorting.h" // #include "grader.cpp" #include <bits/stdc++.h> using namespace std; const int N=2w5+100; int p[N],ind[N]; bool vis[N]; int findSwapPairs(int n, int s[], int m, int x[], int y[], int P[], int Q[]) { if(is_sorted(s,s+n)) return 0; int l=-1,r=m; // [0,m-1] while(l+1<r) { int mid=(l+r)/2; for(int i=0;i<n;i++)vis[i]=0,p[i]=s[i]; for(int use=0;use<=mid;use++) { swap(p[x[use]],p[y[use]]); } bool post=1; int sz=0; for(int i=0;i<n;i++) { if(vis[i])continue; int j=i; vector<int> cyc; while(!vis[j]) { cyc.push_back(j); vis[j]=1; j=p[j]; } sz++; } sz=(n-sz); if(sz>(mid+1)) { post=0; } if(post) { r=mid; } else { l=mid; } } int use=r; for(int i=0;i<n;i++)p[i]=s[i],vis[i]=0,ind[s[i]]=i; for(int i=0;i<=r;i++) { swap(p[x[i]],p[y[i]]); } for(int i=0;i<n;i++)vis[i]=0; vector<pair<int,int>> req; for(int i=0;i<n;i++) { if(vis[i])continue; int j=i; vector<int> cyc; while(!vis[j]) { cyc.push_back(j); vis[j]=1; j=p[j]; } for(int i=1;i<cyc.size();i++) { req.push_back({p[cyc[i-1]],p[cyc[i]]}); } } for(int i=0;i<n;i++)p[i]=s[i],ind[s[i]]=i; for(int i=0;i<m;i++)P[i]=0,Q[i]=0; // if(req.size()>m) // { // return 0; // } for(int i=0;i<req.size();i++) { swap(ind[p[x[i]]],ind[p[y[i]]]); swap(p[x[i]],p[y[i]]); P[i]=ind[req[i].first],Q[i]=ind[req[i].second]; swap(ind[p[P[i]]],ind[p[Q[i]]]); swap(p[P[i]],p[Q[i]]); // swap() } for(int i=req.size();i<=use;i++) { swap(ind[p[x[i]]],ind[p[y[i]]]); swap(p[x[i]],p[y[i]]); } return use+1; return m; }

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

sorting.cpp:5:13: error: unable to find numeric literal operator 'operator""w5'
    5 | const int N=2w5+100;
      |             ^~~
sorting.cpp:6:7: error: size of array 'p' is not an integral constant-expression
    6 | int p[N],ind[N];
      |       ^
sorting.cpp:6:14: error: size of array 'ind' is not an integral constant-expression
    6 | int p[N],ind[N];
      |              ^
sorting.cpp:7:10: error: size of array 'vis' is not an integral constant-expression
    7 | bool vis[N];
      |          ^