제출 #99754

#제출 시각아이디문제언어결과실행 시간메모리
99754Lawliet저울 (IOI15_scales)C++14
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> #define MAX 10 using namespace std; int query[MAX]; bool marc[MAX]; vector<int> aux; vector<int> ordered[2]; int getHeaviest(int A, int B, int C); int getLightest(int A, int B, int C); int getMedian(int A, int B, int C); int getNextLightest(int A, int B, int C, int D); void answer(int W[6]); void orderCoins(void) { int W[6]; ordered[0].push_back(getLightest(1 , 2 , 3)); ordered[0].push_back(getMedian(1 , 2 , 3)); ordered[0].push_back(6 - ordered[0][0] - ordered[0][1]); ordered[1].push_back(getLightest(4 , 5 , 6)); ordered[1].push_back(getMedian(4 , 5 , 6)); ordered[1].push_back(15 - ordered[1][0] - ordered[1][1]); int mn = ordered[0][0]; for(int g = 0 ; g < 3 ; g++) { W[5 - g] = getHeaviest(ordered[0].back() , ordered[1].back() , mn); if(W[5 - g] == ordered[0].back()) ordered[0].pop_back(); if(W[5 - g] == ordered[1].back()) ordered[1].pop_back(); if(ordered[0].size() == 1) mn = ordered[1][0]; } if(ordered[0].size() == 3) for(int g = 0 ; g < 3 ; g++) W[g] = ordered[0][g]; else if(ordered[1].size() == 3) for(int g = 0 ; g < 3 ; g++) W[g] = ordered[1][g]; else { for(int g = 0 ; g < ordered[0].size() ; g++) aux.push_back(ordered[0][g]); for(int g = 0 ; g < ordered[1].size() ; g++) aux.push_back(ordered[1][g]); int med = getMedian(aux[0] , aux[1] , aux[2]); W[1] = med; if(ordered[1].size() == 1) swap(ordered[0] , ordered[1]); if(med == ordered[0][0]) { W[0] = ordered[1][0]; W[2] = ordered[1][1]; } if(med == ordered[1][0]) { W[2] = ordered[1][1]; W[0] = ordered[0][0]; } if(med == ordered[1][1]) { W[0] = ordered[1][0]; W[2] = ordered[0][0]; } } answer(W); } void init(int T) { for(int k = 1 ; k <= T ; k++) { orderCoins(); } }

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

In file included from grader.c:2:0:
graderlib.c: In function 'void answer(int*)':
graderlib.c:53:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
     if (_ghksjhdfkae19ga_ > 1) 
     ^~
graderlib.c:56:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  for (i = 0; i < 6; i++) {
  ^~~
scales.cpp: In function 'void orderCoins()':
scales.cpp:48:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int g = 0 ; g < ordered[0].size() ; g++) aux.push_back(ordered[0][g]);
                     ~~^~~~~~~~~~~~~~~~~~~
scales.cpp:49:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int g = 0 ; g < ordered[1].size() ; g++) aux.push_back(ordered[1][g]);
                     ~~^~~~~~~~~~~~~~~~~~~
/tmp/ccNEigg5.o: In function `main':
grader.c:(.text.startup+0x76): undefined reference to `init'
grader.c:(.text.startup+0xe1): undefined reference to `orderCoins'
/tmp/ccXbvNEL.o: In function `orderCoins()':
scales.cpp:(.text+0x88): undefined reference to `getLightest(int, int, int)'
scales.cpp:(.text+0xb9): undefined reference to `getMedian(int, int, int)'
scales.cpp:(.text+0x104): undefined reference to `getLightest(int, int, int)'
scales.cpp:(.text+0x12b): undefined reference to `getMedian(int, int, int)'
scales.cpp:(.text+0x186): undefined reference to `getHeaviest(int, int, int)'
scales.cpp:(.text+0x282): undefined reference to `answer(int*)'
scales.cpp:(.text+0x328): undefined reference to `getMedian(int, int, int)'
collect2: error: ld returned 1 exit status