Submission #305872

#TimeUsernameProblemLanguageResultExecution timeMemory
305872juggernaut동굴 (IOI13_cave)C++14
Compilation error
0 ms0 KiB
#include"cave.h" #include<bits/stdc++.h> using namespace std; int pos[5000],n,tmp[5000],bl[5000],ans[5000],prev; bool check(int val,int l,int r){ for(int i=l;i<=r;i++)if(!bl[i])ans[i]^=1; int ret=tryCombination(tmp); l=prev; prev=ret; return (l>=i)^(ret>=i); } void exploreCave(int N){ int i=0,l,r,m; n=N; for(;i<n;i++){ l=0,r=n-1; prev=tryCombination(ans); while(l<r){ m=(l+r)>>1; if(check(i,l,m))r=m; else l=m+1; } if(prev>=i)ans[l]^=1; pos[l]=i; bl[l]=1; } answer(ans,pos); }

Compilation message (stderr)

cave.cpp: In function 'bool check(int, int, int)':
cave.cpp:8:7: error: reference to 'prev' is ambiguous
    8 |     l=prev;
      |       ^~~~
In file included from /usr/include/c++/9/bits/stl_algobase.h:66,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from cave.cpp:2:
/usr/include/c++/9/bits/stl_iterator_base_funcs.h:224:5: note: candidates are: 'template<class _BidirectionalIterator> _BidirectionalIterator std::prev(_BidirectionalIterator, typename std::iterator_traits<_Iter>::difference_type)'
  224 |     prev(_BidirectionalIterator __x, typename
      |     ^~~~
cave.cpp:4:46: note:                 'int prev'
    4 | int pos[5000],n,tmp[5000],bl[5000],ans[5000],prev;
      |                                              ^~~~
cave.cpp:9:5: error: reference to 'prev' is ambiguous
    9 |     prev=ret;
      |     ^~~~
In file included from /usr/include/c++/9/bits/stl_algobase.h:66,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from cave.cpp:2:
/usr/include/c++/9/bits/stl_iterator_base_funcs.h:224:5: note: candidates are: 'template<class _BidirectionalIterator> _BidirectionalIterator std::prev(_BidirectionalIterator, typename std::iterator_traits<_Iter>::difference_type)'
  224 |     prev(_BidirectionalIterator __x, typename
      |     ^~~~
cave.cpp:4:46: note:                 'int prev'
    4 | int pos[5000],n,tmp[5000],bl[5000],ans[5000],prev;
      |                                              ^~~~
cave.cpp:10:16: error: 'i' was not declared in this scope
   10 |     return (l>=i)^(ret>=i);
      |                ^
cave.cpp: In function 'void exploreCave(int)':
cave.cpp:17:9: error: reference to 'prev' is ambiguous
   17 |         prev=tryCombination(ans);
      |         ^~~~
In file included from /usr/include/c++/9/bits/stl_algobase.h:66,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from cave.cpp:2:
/usr/include/c++/9/bits/stl_iterator_base_funcs.h:224:5: note: candidates are: 'template<class _BidirectionalIterator> _BidirectionalIterator std::prev(_BidirectionalIterator, typename std::iterator_traits<_Iter>::difference_type)'
  224 |     prev(_BidirectionalIterator __x, typename
      |     ^~~~
cave.cpp:4:46: note:                 'int prev'
    4 | int pos[5000],n,tmp[5000],bl[5000],ans[5000],prev;
      |                                              ^~~~
cave.cpp:23:12: error: reference to 'prev' is ambiguous
   23 |         if(prev>=i)ans[l]^=1;
      |            ^~~~
In file included from /usr/include/c++/9/bits/stl_algobase.h:66,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from cave.cpp:2:
/usr/include/c++/9/bits/stl_iterator_base_funcs.h:224:5: note: candidates are: 'template<class _BidirectionalIterator> _BidirectionalIterator std::prev(_BidirectionalIterator, typename std::iterator_traits<_Iter>::difference_type)'
  224 |     prev(_BidirectionalIterator __x, typename
      |     ^~~~
cave.cpp:4:46: note:                 'int prev'
    4 | int pos[5000],n,tmp[5000],bl[5000],ans[5000],prev;
      |                                              ^~~~