Submission #999068

#TimeUsernameProblemLanguageResultExecution timeMemory
999068AdamGSBroken Device (JOI17_broken_device)C++17
Compilation error
0 ms0 KiB
#include "Annalib.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; #define rep(a, b) for(int a = 0; a < (b); ++a) #define st first #define nd second #define pb push_back #define all(a) a.begin(), a.end() void Anna(int n, ll x, int k, int P[]) { mt19937 rng(2137); rep(i, 60) if(rng()%2) x^=1ll<<(ll)i; vector<int>czy(n), T(n); rep(i, k) czy[P[i]]=1; ll akt=0; rep(i, 60) { ll a=0; if(x&(1ll<<(ll)i)) a=1; while(akt%2!=a || czy[akt]) ++akt; T[akt]=1; ++akt; } rep(i, n) set(i, T[i]); }
#include "Brunolib.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; #define rep(a, b) for(int a = 0; a < (b); ++a) #define st first #define nd second #define pb push_back #define all(a) a.begin(), a.end() ll Bruno(int n, int A[]) { ll x=0, p=0; rep(i, n) if(A[i]) { if(i%2==1) x|=1ll<<(ll)p; ++p; } mt19937 rng(2137); rep(i, 60) if(rng()%2) x^=1ll<<(ll)i; return x; }

Compilation message (stderr)

Anna.cpp: In function 'void Anna(int, ll, int, int*)':
Anna.cpp:23:24: error: class template argument deduction failed:
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
Anna.cpp:23:24: error: no matching function for call to 'set(int&, __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type&)'
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:271:2: note: candidate: 'template<class _Key, class _Compare, class _Alloc, class _InputIterator> set(_InputIterator, _InputIterator, const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  271 |  set(_InputIterator __first, _InputIterator __last,
      |  ^~~
/usr/include/c++/10/bits/stl_set.h:271:2: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   candidate expects 3 arguments, 2 provided
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:265:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::initializer_list<_Tp>, const allocator_type&)-> std::set<_Key, _Compare, _Alloc>'
  265 |       set(initializer_list<value_type> __l, const allocator_type& __a)
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:265:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:259:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::set<_Key, _Compare, _Alloc>&&, const allocator_type&)-> std::set<_Key, _Compare, _Alloc>'
  259 |       set(set&& __x, const allocator_type& __a)
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:259:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'std::set<_Key, _Compare, _Alloc>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:255:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const std::set<_Key, _Compare, _Alloc>&, const allocator_type&)-> std::set<_Key, _Compare, _Alloc>'
  255 |       set(const set& __x, const allocator_type& __a)
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:255:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'const std::set<_Key, _Compare, _Alloc>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:251:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const allocator_type&)-> std::set<_Key, _Compare, _Alloc>'
  251 |       set(const allocator_type& __a)
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:251:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   candidate expects 1 argument, 2 provided
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:243:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::initializer_list<_Tp>, const _Compare&, const allocator_type&)-> std::set<_Key, _Compare, _Alloc>'
  243 |       set(initializer_list<value_type> __l,
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:243:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:231:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::set<_Key, _Compare, _Alloc>&&)-> std::set<_Key, _Compare, _Alloc>'
  231 |       set(set&&) = default;
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:231:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'std::set<_Key, _Compare, _Alloc>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:223:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const std::set<_Key, _Compare, _Alloc>&)-> std::set<_Key, _Compare, _Alloc>'
  223 |       set(const set&) = default;
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:223:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'const std::set<_Key, _Compare, _Alloc>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:208:2: note: candidate: 'template<class _Key, class _Compare, class _Alloc, class _InputIterator> set(_InputIterator, _InputIterator, const _Compare&, const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  208 |  set(_InputIterator __first, _InputIterator __last,
      |  ^~~
/usr/include/c++/10/bits/stl_set.h:208:2: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   candidate expects 4 arguments, 2 provided
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:191:2: note: candidate: 'template<class _Key, class _Compare, class _Alloc, class _InputIterator> set(_InputIterator, _InputIterator)-> std::set<_Key, _Compare, _Alloc>'
  191 |  set(_InputIterator __first, _InputIterator __last)
      |  ^~~
/usr/include/c++/10/bits/stl_set.h:191:2: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   couldn't deduce template parameter '_Key'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:176:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const _Compare&, const allocator_type&)-> std::set<_Key, _Compare, _Alloc>'
  176 |       set(const _Compare& __comp,
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:176:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   couldn't deduce template parameter '_Key'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:167:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set()-> std::set<_Key, _Compare, _Alloc>'
  167 |       set() = default;
      |       ^~~
/usr/include/c++/10/bits/stl_set.h:167:7: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   candidate expects 0 arguments, 2 provided
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:94:11: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::set<_Key, _Compare, _Alloc>)-> std::set<_Key, _Compare, _Alloc>'
   94 |     class set
      |           ^~~
/usr/include/c++/10/bits/stl_set.h:94:11: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'std::set<_Key, _Compare, _Alloc>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:968:5: note: candidate: 'template<class _Key, class _Allocator, class> std::set(std::initializer_list<_Tp>, _Allocator)-> std::set<_Key, std::less<_Key>, _Allocator>'
  968 |     set(initializer_list<_Key>, _Allocator)
      |     ^~~
/usr/include/c++/10/bits/stl_set.h:968:5: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:961:5: note: candidate: 'template<class _InputIterator, class _Allocator, class, class> std::set(_InputIterator, _InputIterator, _Allocator)-> std::set<typename std::iterator_traits<_Iter>::value_type, std::less<typename std::iterator_traits< <template-parameter-1-1> >::value_type>, _Allocator>'
  961 |     set(_InputIterator, _InputIterator, _Allocator)
      |     ^~~
/usr/include/c++/10/bits/stl_set.h:961:5: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   candidate expects 3 arguments, 2 provided
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:954:5: note: candidate: 'template<class _Key, class _Compare, class _Allocator, class, class> std::set(std::initializer_list<_Tp>, _Compare, _Allocator)-> std::set<_Key, _Compare, _Allocator>'
  954 |     set(initializer_list<_Key>,
      |     ^~~
/usr/include/c++/10/bits/stl_set.h:954:5: note:   template argument deduction/substitution failed:
Anna.cpp:23:24: note:   mismatched types 'std::initializer_list<_Tp>' and 'int'
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
In file included from /usr/include/c++/10/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:87,
                 from Anna.cpp:2:
/usr/include/c++/10/bits/stl_set.h:945:5: note: candidate: 'template<class _InputIterator, class _Compare, class _Allocator, class, class, class> std::set(_InputIterator, _InputIterator, _Compare, _Allocator)-> std::set<typename std::iterator_traits<_Iter>::value_type, _Compare, _Allocator>'
  945 |     set(_InputIterator, _InputIterator,
      |     ^~~
/usr/include/c++/10/bits/stl_set.h:945:5: note:   template argument deduction/substitution failed:
/usr/include/c++/10/bits/stl_set.h:938:5: error: no type named 'value_type' in 'struct std::iterator_traits<int>'
  938 |     typename _Compare =
      |     ^~~~~~~~
Anna.cpp:23:24: error: expression list treated as compound expression in functional cast [-fpermissive]
   23 |   rep(i, n) set(i, T[i]);
      |                        ^
Anna.cpp:23:17: warning: left operand of comma operator has no effect [-Wunused-value]
   23 |   rep(i, n) set(i, T[i]);
      |                 ^