Submission #49820

#TimeUsernameProblemLanguageResultExecution timeMemory
49820zetapiScales (IOI15_scales)C++14
Compilation error
0 ms0 KiB
//#include "scales.h" #include "bits/stdc++.h" using namespace std; #define mp make_pair #define pb push_back void init(int T) { /* ... */ } void erase(int X,vector<int> &f,vector<int> &s) { for(int A=0;A<f.size();A++) if(f[A]==X) { f.erase(f.begin()+A); return ; } for(int A=0;A<s.size();A++) if(s[A]==X) { s.erase(s.begin()+A); return ; } } /*int getMedian(int X,int Y,int Z) { int arr[]={X,Y,Z}; sort(arr,arr+3); return arr[1]; } int getLightest(int X,int Y,int Z) { int arr[]={X,Y,Z}; sort(arr,arr+3); return arr[0]; } void answer(int W[]) { }*/ void orderCoins() { /* ... */ int W[] = {1, 2, 3, 4, 5, 6}; vector<int> f(4),s(4),res; f={getLightest(1,2,3),getMedian(1,2,3),6-(f[0]+f[1])}; s={getLightest(4,5,6),getMedian(4,5,6),15-(s[0]+s[1])}; f[2]=6-f[0]-f[1]; s[2]=15-s[0]-s[1]; while((!f.empty())||(!s.empty())) { if(f.empty()) { while(!s.empty()) { res.pb(*s.begin()); s.erase(s.begin()); } } else if(s.empty()) { while(!f.empty()) { res.pb(*f.begin()); f.erase(f.begin()); } } else if(f.size()==1 && s.size()==1) { res.pb(getMedian(res[0],f[0],s[0])); res.pb(f[0]+s[0]-res.back()); erase(res[res.size()-2],f,s); erase(res[res.size()-1],f,s); } else { if(res.empty()) { res.pb(getLightest(f[0],f[1],s[0])); erase(res.back(),f,s); } else { res.pb(getMedian(res[0],f[0],s[0])); erase(res.back(),f,s); } } /*cout<<" res "; for(auto A:res) cout<<A<<" "; cout<<"\n f "; for(auto A:f) cout<<A<<" "; cout<<"\n s "; for(auto A:s) cout<<A<<" ";*/ } for(int A=0;A<6;A++) W[A]=res[A]; answer(W); } /*int main() { ios_base::sync_with_stdio(false); orderCoins(); return 0; }*/

Compilation message (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 init(int)':
scales.cpp:9:15: warning: unused parameter 'T' [-Wunused-parameter]
 void init(int T)
               ^
scales.cpp: In function 'void erase(int, std::vector<int>&, std::vector<int>&)':
scales.cpp:17:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int A=0;A<f.size();A++)
              ~^~~~~~~~~
scales.cpp:23:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int A=0;A<s.size();A++)
              ~^~~~~~~~~
scales.cpp: In function 'void orderCoins()':
scales.cpp:56:8: error: 'getLightest' was not declared in this scope
     f={getLightest(1,2,3),getMedian(1,2,3),6-(f[0]+f[1])};
        ^~~~~~~~~~~
scales.cpp:56:8: note: suggested alternative: 'gettext'
     f={getLightest(1,2,3),getMedian(1,2,3),6-(f[0]+f[1])};
        ^~~~~~~~~~~
        gettext
scales.cpp:56:27: error: 'getMedian' was not declared in this scope
     f={getLightest(1,2,3),getMedian(1,2,3),6-(f[0]+f[1])};
                           ^~~~~~~~~
scales.cpp:56:27: note: suggested alternative: 'getdelim'
     f={getLightest(1,2,3),getMedian(1,2,3),6-(f[0]+f[1])};
                           ^~~~~~~~~
                           getdelim
scales.cpp:56:57: error: no match for 'operator=' (operand types are 'std::vector<int>' and '<brace-enclosed initializer list>')
     f={getLightest(1,2,3),getMedian(1,2,3),6-(f[0]+f[1])};
                                                         ^
In file included from /usr/include/c++/7/vector:69:0,
                 from /usr/include/c++/7/queue:61,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
                 from scales.cpp:2:
/usr/include/c++/7/bits/vector.tcc:179:5: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(const std::vector<_Tp, _Alloc>&) [with _Tp = int; _Alloc = std::allocator<int>]
     vector<_Tp, _Alloc>::
     ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:179:5: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const std::vector<int>&'
In file included from /usr/include/c++/7/vector:64:0,
                 from /usr/include/c++/7/queue:61,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
                 from scales.cpp:2:
/usr/include/c++/7/bits/stl_vector.h:461:7: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::vector<_Tp, _Alloc>&&) [with _Tp = int; _Alloc = std::allocator<int>]
       operator=(vector&& __x) noexcept(_Alloc_traits::_S_nothrow_move())
       ^~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:461:7: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::vector<int>&&'
/usr/include/c++/7/bits/stl_vector.h:482:7: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::initializer_list<_Tp>) [with _Tp = int; _Alloc = std::allocator<int>]
       operator=(initializer_list<value_type> __l)
       ^~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:482:7: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::initializer_list<int>'
scales.cpp:57:58: error: no match for 'operator=' (operand types are 'std::vector<int>' and '<brace-enclosed initializer list>')
     s={getLightest(4,5,6),getMedian(4,5,6),15-(s[0]+s[1])};
                                                          ^
In file included from /usr/include/c++/7/vector:69:0,
                 from /usr/include/c++/7/queue:61,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
                 from scales.cpp:2:
/usr/include/c++/7/bits/vector.tcc:179:5: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(const std::vector<_Tp, _Alloc>&) [with _Tp = int; _Alloc = std::allocator<int>]
     vector<_Tp, _Alloc>::
     ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:179:5: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const std::vector<int>&'
In file included from /usr/include/c++/7/vector:64:0,
                 from /usr/include/c++/7/queue:61,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:86,
                 from scales.cpp:2:
/usr/include/c++/7/bits/stl_vector.h:461:7: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::vector<_Tp, _Alloc>&&) [with _Tp = int; _Alloc = std::allocator<int>]
       operator=(vector&& __x) noexcept(_Alloc_traits::_S_nothrow_move())
       ^~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:461:7: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::vector<int>&&'
/usr/include/c++/7/bits/stl_vector.h:482:7: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::initializer_list<_Tp>) [with _Tp = int; _Alloc = std::allocator<int>]
       operator=(initializer_list<value_type> __l)
       ^~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:482:7: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::initializer_list<int>'
scales.cpp:110:5: error: 'answer' was not declared in this scope
     answer(W);
     ^~~~~~
scales.cpp:110:5: note: suggested alternative: 'assert'
     answer(W);
     ^~~~~~
     assert