Submission #919015

#TimeUsernameProblemLanguageResultExecution timeMemory
919015Gwynbleidd_Cave (IOI13_cave)C++14
Compilation error
0 ms0 KiB
#include "cave.h" #include <bits/stdc++.h> using namespace std; int n; vector<int> flip, pos; int comb(vector<int>& a){ int q[n]; for(int i=0;i<n;i++) q[i]=a[i]; return tryCombination(q); } void answer(){ int flip[n], pos[n]; for(int i=0;i<n;i++) flip[i]=f[i], pos[i]=p[i]; answer(flip,pos); } void dac(vector<int>& a, vector<int>& ind, int last){ if(ind.size()==1){ if(last==-1){ flip[ind[0]]=a[ind[0]]; a[ind[0]]=1-a[ind[0]]; p[ind[0]]=comb(a); } else{ p[ind[0]]=last; flip[ind[0]]=1-a[ind[0]]; } } else{ vector<int> l,r; for(int i=0;i<ind.size();i++){ if(i<ind.size()/2){ a[i]=1-a[i]; l.push_back(i); } else{ r.push_back(i); } } int x=comb(a); if(x==last){ for(int i=0;i<l.size();i++){ a[i]=1-a[i]; } dac(a,r,last); } else{ dac(a,l,last); } } } void exploreCave(int N) { n=N; flip.assign(n,-1); pos.assign(n,-1); vector<int> a(n); for(int t=0;t<n;t++){ for(int i=0;i<n;i++){ vector<int> ind; if(flip[i]!=-1){ a[i]=flip[i]; } else{ ind.push_back(i); a[i]=0; } } if(!ind.size()){ break; } dac(a,comb(a)) } answer(); }

Compilation message (stderr)

cave.cpp: In function 'void answer()':
cave.cpp:18:34: error: 'f' was not declared in this scope
   18 |     for(int i=0;i<n;i++) flip[i]=f[i], pos[i]=p[i];
      |                                  ^
cave.cpp:18:47: error: 'p' was not declared in this scope
   18 |     for(int i=0;i<n;i++) flip[i]=f[i], pos[i]=p[i];
      |                                               ^
cave.cpp: In function 'void dac(std::vector<int>&, std::vector<int>&, int)':
cave.cpp:27:13: error: 'p' was not declared in this scope
   27 |             p[ind[0]]=comb(a);
      |             ^
cave.cpp:30:13: error: 'p' was not declared in this scope
   30 |             p[ind[0]]=last;
      |             ^
cave.cpp:36:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   36 |         for(int i=0;i<ind.size();i++){
      |                     ~^~~~~~~~~~~
cave.cpp:37:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |             if(i<ind.size()/2){
      |                ~^~~~~~~~~~~~~
cave.cpp:47:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   47 |             for(int i=0;i<l.size();i++){
      |                         ~^~~~~~~~~
cave.cpp: In function 'void exploreCave(int)':
cave.cpp:74:13: error: 'ind' was not declared in this scope; did you mean 'int'?
   74 |         if(!ind.size()){
      |             ^~~
      |             int
cave.cpp:77:19: error: invalid initialization of non-const reference of type 'std::vector<int>&' from an rvalue of type 'int'
   77 |         dac(a,comb(a))
      |               ~~~~^~~
cave.cpp:22:39: note: in passing argument 2 of 'void dac(std::vector<int>&, std::vector<int>&, int)'
   22 | void dac(vector<int>& a, vector<int>& ind, int last){
      |                          ~~~~~~~~~~~~~^~~