# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
430159 | 2021-06-16T11:46:46 Z | Mounir | 최후의 만찬 (IOI12_supper) | C++14 | 컴파일 오류 |
0 ms | 0 KB |
#include "advisor.h" #include <bits/stdc++.h> using namespace std; const int N_BITS = 13; void ComputeAdvice(int *C, int N, int K, int M) { for (int val : C){ for (int i = 0; i < N_BITS; ++i) WriteAdvice((val&(1 << i)) > 0); } }
#include "assistant.h" #include <bits/stdc++.h> using namespace std; const int N_BITS = 13; void Assist(unsigned char *A, int N, int K, int R) { vector<int> C; for (int i = 0; i < R; i += N_BITS){ int tot = 0; for (int bit = 0; bit < N_BITS; ++bit) tot += A[i + bit] * (1 << bit) C.push_back(tot); } vector<int> presents, absents; for (int i = 0; i < K; ++i) presents.insert(i); for (int i = K; i < N; ++i) absents.insert(i); for (int iReq = 0; iReq < N; ++iReq){ int proc = GetRequest(); if (presents.count(proc) == 0){ presents.insert(proc); absents.erase(proc); int procUtil = -1, color = -1; for (int present : presents){ int ind = iReq + 1; while (ind < N && C[ind] != present) ++ind; if (ind > procUtil){ procUtil = ind; color = present; } } PutBack(color); presents.erase(color); absents.insert(color); } } }
Compilation message
advisor.cpp: In function 'void ComputeAdvice(int*, int, int, int)': advisor.cpp:9:17: error: 'begin' was not declared in this scope; did you mean 'std::begin'? 9 | for (int val : C){ | ^ | std::begin In file included from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:95, from advisor.cpp:3: /usr/include/c++/10/valarray:1224:5: note: 'std::begin' declared here 1224 | begin(const valarray<_Tp>& __va) | ^~~~~ advisor.cpp:9:17: error: 'end' was not declared in this scope; did you mean 'std::end'? 9 | for (int val : C){ | ^ | std::end In file included from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:95, from advisor.cpp:3: /usr/include/c++/10/valarray:1244:5: note: 'std::end' declared here 1244 | end(const valarray<_Tp>& __va) | ^~~ assistant.cpp: In function 'void Assist(unsigned char*, int, int, int)': assistant.cpp:13:34: error: expected ';' before 'C' 13 | tot += A[i + bit] * (1 << bit) | ^ | ; 14 | C.push_back(tot); | ~ assistant.cpp:19:20: error: no matching function for call to 'std::vector<int>::insert(int&)' 19 | presents.insert(i); | ^ In file included from /usr/include/c++/10/vector:72, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 130 | vector<_Tp, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate expects 2 arguments, 1 provided In file included from /usr/include/c++/10/vector:67, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 1293 | insert(const_iterator __position, value_type&& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::initializer_list<_Tp>) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1310 | insert(const_iterator __position, initializer_list<value_type> __l) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::size_type, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::value_type = int]' 1335 | insert(const_iterator __position, size_type __n, const value_type& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1379:2: note: candidate: 'template<class _InputIterator, class> std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _Tp = int; _Alloc = std::allocator<int>]' 1379 | insert(const_iterator __position, _InputIterator __first, | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1379:2: note: template argument deduction/substitution failed: assistant.cpp:19:20: note: candidate expects 3 arguments, 1 provided 19 | presents.insert(i); | ^ assistant.cpp:21:19: error: no matching function for call to 'std::vector<int>::insert(int&)' 21 | absents.insert(i); | ^ In file included from /usr/include/c++/10/vector:72, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 130 | vector<_Tp, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate expects 2 arguments, 1 provided In file included from /usr/include/c++/10/vector:67, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 1293 | insert(const_iterator __position, value_type&& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::initializer_list<_Tp>) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1310 | insert(const_iterator __position, initializer_list<value_type> __l) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::size_type, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::value_type = int]' 1335 | insert(const_iterator __position, size_type __n, const value_type& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1379:2: note: candidate: 'template<class _InputIterator, class> std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _Tp = int; _Alloc = std::allocator<int>]' 1379 | insert(const_iterator __position, _InputIterator __first, | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1379:2: note: template argument deduction/substitution failed: assistant.cpp:21:19: note: candidate expects 3 arguments, 1 provided 21 | absents.insert(i); | ^ assistant.cpp:25:16: error: 'class std::vector<int>' has no member named 'count' 25 | if (presents.count(proc) == 0){ | ^~~~~ assistant.cpp:26:24: error: no matching function for call to 'std::vector<int>::insert(int&)' 26 | presents.insert(proc); | ^ In file included from /usr/include/c++/10/vector:72, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 130 | vector<_Tp, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate expects 2 arguments, 1 provided In file included from /usr/include/c++/10/vector:67, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 1293 | insert(const_iterator __position, value_type&& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::initializer_list<_Tp>) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1310 | insert(const_iterator __position, initializer_list<value_type> __l) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::size_type, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::value_type = int]' 1335 | insert(const_iterator __position, size_type __n, const value_type& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1379:2: note: candidate: 'template<class _InputIterator, class> std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _Tp = int; _Alloc = std::allocator<int>]' 1379 | insert(const_iterator __position, _InputIterator __first, | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1379:2: note: template argument deduction/substitution failed: assistant.cpp:26:24: note: candidate expects 3 arguments, 1 provided 26 | presents.insert(proc); | ^ assistant.cpp:27:22: error: no matching function for call to 'std::vector<int>::erase(int&)' 27 | absents.erase(proc); | ^ In file included from /usr/include/c++/10/vector:67, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/stl_vector.h:1430:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::erase(std::vector<_Tp, _Alloc>::const_iterator) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1430 | erase(const_iterator __position) | ^~~~~ /usr/include/c++/10/bits/stl_vector.h:1430:28: note: no known conversion for argument 1 from 'int' to 'std::vector<int>::const_iterator' 1430 | erase(const_iterator __position) | ~~~~~~~~~~~~~~~^~~~~~~~~~ /usr/include/c++/10/bits/stl_vector.h:1457:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::erase(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::const_iterator) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1457 | erase(const_iterator __first, const_iterator __last) | ^~~~~ /usr/include/c++/10/bits/stl_vector.h:1457:7: note: candidate expects 2 arguments, 1 provided assistant.cpp:41:24: error: no matching function for call to 'std::vector<int>::erase(int&)' 41 | presents.erase(color); | ^ In file included from /usr/include/c++/10/vector:67, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/stl_vector.h:1430:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::erase(std::vector<_Tp, _Alloc>::const_iterator) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1430 | erase(const_iterator __position) | ^~~~~ /usr/include/c++/10/bits/stl_vector.h:1430:28: note: no known conversion for argument 1 from 'int' to 'std::vector<int>::const_iterator' 1430 | erase(const_iterator __position) | ~~~~~~~~~~~~~~~^~~~~~~~~~ /usr/include/c++/10/bits/stl_vector.h:1457:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::erase(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::const_iterator) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1457 | erase(const_iterator __first, const_iterator __last) | ^~~~~ /usr/include/c++/10/bits/stl_vector.h:1457:7: note: candidate expects 2 arguments, 1 provided assistant.cpp:42:24: error: no matching function for call to 'std::vector<int>::insert(int&)' 42 | absents.insert(color); | ^ In file included from /usr/include/c++/10/vector:72, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 130 | vector<_Tp, _Alloc>:: | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/10/bits/vector.tcc:130:5: note: candidate expects 2 arguments, 1 provided In file included from /usr/include/c++/10/vector:67, from /usr/include/c++/10/queue:61, from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:86, from assistant.cpp:3: /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::value_type = int]' 1293 | insert(const_iterator __position, value_type&& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1293:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::initializer_list<_Tp>) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator]' 1310 | insert(const_iterator __position, initializer_list<value_type> __l) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1310:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate: 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, std::vector<_Tp, _Alloc>::size_type, const value_type&) [with _Tp = int; _Alloc = std::allocator<int>; std::vector<_Tp, _Alloc>::iterator = std::vector<int>::iterator; std::vector<_Tp, _Alloc>::const_iterator = std::vector<int>::const_iterator; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::value_type = int]' 1335 | insert(const_iterator __position, size_type __n, const value_type& __x) | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1335:7: note: candidate expects 3 arguments, 1 provided /usr/include/c++/10/bits/stl_vector.h:1379:2: note: candidate: 'template<class _InputIterator, class> std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _Tp = int; _Alloc = std::allocator<int>]' 1379 | insert(const_iterator __position, _InputIterator __first, | ^~~~~~ /usr/include/c++/10/bits/stl_vector.h:1379:2: note: template argument deduction/substitution failed: assistant.cpp:42:24: note: candidate expects 3 arguments, 1 provided 42 | absents.insert(color); | ^