제출 #446813

#제출 시각아이디문제언어결과실행 시간메모리
446813Deepesson곤돌라 (IOI14_gondola)C++17
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> //#include <gondola.h> int valid(int n, int inputSeq[]) { std::map<int,bool> existe; for(int i = 0;i!=n;++i){ auto&x=inputSeq[i]; if(existe[x]){ return false; } existe[x]=true; } int ind = -1; int val=1e6; for(int i=0;i!=n;++i){ if(inputSeq[i]<=n){ if(inputSeq[i]<val){ val=inputSeq[i]; ind=i; } } } if(ind==-1)ind=0; if(val>n){return true;} int imaginario[n]; int count = inputSeq[ind]; if(ind==-1)count=0; for(int i=ind;i!=n;++i){ imaginario[i]=count; ++count; } for(int i=0;i!=ind;++i){ imaginario[i]=count; ++count; } for(int i=0;i!=n;++i) { if(inputSeq[i]>n)continue; if(inputSeq[i]!=imaginario[i]){return false;} } return true; } //---------------------- int replacement(int n, int gondolaSeq[], int replacementSeq[]) { int array[n]; int padrao[n]; for(int i=0;i!=n;++i) array[i]=gondolaSeq[i]; std::map<int,int> vec; int max=0; for(int i=0;i!=n;++i){ if(array[i]>n){ vec[array[i]]=i; max=std::max(max,array[i]); } } if(!max)return 0; int cursor=0; int ind = -1; int val=1e6; for(int i=0;i!=n;++i){ if(array[i]<=n){ if(array[i]<val){ val=array[i]; ind=i; } } } int imaginario[n]; int count = array[ind]; if(ind==-1){count=1;ind=0;} for(int i=ind;i!=n;++i){ imaginario[i]=count%(n); if(!imaginario[i])imaginario[i]=n; ++count; } for(int i=0;i!=ind;++i){ imaginario[i]=count%(n); if(!imaginario[i])imaginario[i]=n; ++count; } for(;;){ int proxima_gondola = cursor+n+1; auto it = vec.find(proxima_gondola); if(it==vec.end()){ int subs = vec.begin()->second; replacementSeq[cursor]=imaginario[subs]; imaginario[subs]=proxima_gondola; }else { int subs = it->second; replacementSeq[cursor]=imaginario[subs]; imaginario[subs]=proxima_gondola; vec.erase(it); } ++cursor; if(!vec.size())break; } return cursor; } //---------------------- int countReplacement(int n, int inputSeq[]) { return -3; }

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

gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:50:7: warning: unused variable 'padrao' [-Wunused-variable]
   50 |   int padrao[n];
      |       ^~~~~~
/usr/bin/ld: /tmp/ccOQZxYA.o: in function `main':
grader.cpp:(.text.startup+0xb6): undefined reference to `valid'
/usr/bin/ld: grader.cpp:(.text.startup+0x108): undefined reference to `countReplacement'
/usr/bin/ld: grader.cpp:(.text.startup+0x132): undefined reference to `replacement'
collect2: error: ld returned 1 exit status