제출 #415731

#제출 시각아이디문제언어결과실행 시간메모리
415731victoriad저울 (IOI15_scales)C++14
38.86 / 100
4 ms308 KiB
#include "scales.h" #include <vector> using namespace std; void init(int T) { /* ... */ } void orderCoins() { int ANS[6]; int g1[3]; int g2[4]; int g3[5]; int l=getLightest(1,2,3); int m=getMedian(1,2,3); vector<bool>co(4,false); co[l]=true; co[m]=true; g1[0]=l; g1[1]=m; for(int i=1;i<4;i++){ if(!co[i]){ g1[2]=i; } } l=getNextLightest(1,2,3,4); if(l!=g1[0]){ g2[0]=g1[0]; if(l==g1[1]){ g2[1]=4; g2[2]=g1[1]; g2[3]=g1[2]; } else{ g2[1]=g1[1]; g2[2]=4; g2[3]=g1[2]; } } else{ int x=getLightest(g1[0],g1[1],4); if(x==g1[0]){ for(int i=0;i<3;i++)g2[i]=g1[i]; g2[3]=4; } else{ g2[0]=4; for(int i=0;i<3;i++)g2[i+1]=g1[i]; } } l=getNextLightest(g2[0],g2[1],g2[2],5); if(l!=g2[0]){ g3[0]=g2[0]; if(l==g2[1]){ g3[1]=5; g3[2]=g2[1]; g3[3]=g2[2]; g3[4]=g2[3]; } else{ g3[1]=g2[1]; g3[2]=5; g3[3]=g2[2]; g3[4]=g2[3]; } } else{ int x=getLightest(5,g2[0],g2[1]); if(x==5){ g3[0]=5; for(int i=0;i<4;i++)g3[i+1]=g2[i]; } else{ int y=getHeaviest(g2[3],5,g2[0]); if(y==5){ for(int i=0;i<4;i++)g3[i]=g2[i]; g3[4]=5; } else{ for(int i=0;i<3;i++)g3[i]=g2[i]; g3[3]=5; g3[4]=g2[3]; } } } l=getNextLightest(g3[0],g3[1],g3[2],6); if(l!=g3[0]){ ANS[0]=g3[0]; if(l==g3[1]){ ANS[1]=6; ANS[2]=g3[1]; ANS[3]=g3[2]; ANS[4]=g3[3]; ANS[5]=g3[4]; } else{ ANS[1]=g3[1]; ANS[2]=6; ANS[3]=g3[2]; ANS[4]=g3[3]; ANS[5]=g3[4]; } } else{ int x=getLightest(6,g3[0],g3[1]); if(x==6){ ANS[0]=6; for(int i=0;i<5;i++)ANS[i+1]=g3[i]; } else{ int y=getNextLightest(g3[2],g3[3],g3[4],6); if(y==g3[2]){ for(int i=0;i<5;i++)ANS[i]=g3[i]; ANS[5]=6; } else if(y==g3[3]){ for(int i=0;i<3;i++)ANS[i]=g3[i]; ANS[3]=6; ANS[4]=g3[3]; ANS[5]=g3[4]; } else{ for(int i=0;i<4;i++)ANS[i]=g3[i]; ANS[4]=6; ANS[5]=g3[4]; } } } answer(ANS); }

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

scales.cpp: In function 'void init(int)':
scales.cpp:4:15: warning: unused parameter 'T' [-Wunused-parameter]
    4 | void init(int T) {
      |           ~~~~^
#Verdict Execution timeMemoryGrader output
Fetching results...