제출 #206051

#제출 시각아이디문제언어결과실행 시간메모리
206051Segtree정렬하기 (IOI15_sorting)C++14
54 / 100
1090 ms504 KiB
#include"sorting.h" #include<bits/stdc++.h> #include<iostream> #include<algorithm> #include<vector> #include<queue> using namespace std; typedef long long ll; #define chmin(a,b) a=min(a,b) #define chmax(a,b) a=max(a,b) #define all(x) x,begin(),x.end() #define rep(i,n) for(int i=0;i<n;i++) #define mod 1000000007 #define mad(a,b) a=(a+b)%mod int findSwapPairs(int N,int S[],int M,int X[],int Y[],int P[],int Q[]){ bool sorted=1; rep(i,N)sorted&=(S[i]==i); if(sorted)return 0; int ss[2010]; rep(i,N)ss[i]=S[i]; int R=0; for(;;R++){ swap(S[X[R]],S[Y[R]]); ll cnt=0,s[2010]; rep(i,N)s[i]=S[i]; rep(i,N){ ll p; rep(j,N)if(i==s[j])p=j; if(i!=p){ P[cnt]=s[i],Q[cnt]=s[p]; cnt++; swap(s[i],s[p]); } } if(cnt<=R+1){ R++; for(;cnt<R;cnt++)P[cnt]=Q[cnt]=0; for(int i=0;i<R;i++){ swap(ss[X[i]],ss[Y[i]]); ll place_p,place_q; rep(j,N){ if(ss[j]==P[i])place_p=j; if(ss[j]==Q[i])place_q=j; } swap(ss[place_p],ss[place_q]); P[i]=place_p,Q[i]=place_q; } return R; } } return -1; } /* int main(){ int n,s[100],m,x[1000],y[1000],p[1000],q[1000]; cin>>n; rep(i,n)cin>>s[i]; cin>>m; rep(i,m){ cin>>x[i]>>y[i]; } cout<<"R="<<findSwapPairs(n,s,m,x,y,p,q)<<endl; }*/

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

sorting.cpp: In function 'int findSwapPairs(int, int*, int, int*, int*, int*, int*)':
sorting.cpp:31:15: warning: conversion to 'int' from 'll {aka long long int}' may alter its value [-Wconversion]
     P[cnt]=s[i],Q[cnt]=s[p];
            ~~~^
sorting.cpp:31:27: warning: conversion to 'int' from 'll {aka long long int}' may alter its value [-Wconversion]
     P[cnt]=s[i],Q[cnt]=s[p];
                        ~~~^
sorting.cpp:47:10: warning: conversion to 'int' from 'll {aka long long int}' may alter its value [-Wconversion]
     P[i]=place_p,Q[i]=place_q;
          ^~~~~~~
sorting.cpp:47:23: warning: conversion to 'int' from 'll {aka long long int}' may alter its value [-Wconversion]
     P[i]=place_p,Q[i]=place_q;
                       ^~~~~~~
sorting.cpp:15:37: warning: unused parameter 'M' [-Wunused-parameter]
 int findSwapPairs(int N,int S[],int M,int X[],int Y[],int P[],int Q[]){
                                     ^
sorting.cpp:30:4: warning: 'p' may be used uninitialized in this function [-Wmaybe-uninitialized]
    if(i!=p){
    ^~
#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...