답안 #999068

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
999068 2024-06-15T06:07:23 Z AdamGS Broken Device (JOI17_broken_device) C++17
컴파일 오류
0 ms 0 KB
#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

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]);
      |                 ^