Submission #1217976

#TimeUsernameProblemLanguageResultExecution timeMemory
1217976GrayBroken Device (JOI17_broken_device)C++20
Compilation error
0 ms0 KiB
#include "Annalib.h" #include <algorithm> #include <bits/stdc++.h> #define ll long long using namespace std; void Anna( int N, long long X, int K, int P[] ){ map<ll, ll> unfree; for (ll i=0; i<K; i++){ unfree[P[i]]=1; } vector<ll> nums; for (ll i=0; i<60; i++){ if ((1ull<<i)&X) nums.push_back(1); else nums.push_back(0); } reverse(nums.begin(), nums.end()); for (ll i=2; i<N; i+=3){ ll m2, m1; if (nums.empty()){ m2=m1=0; }else{ m1=nums.back(); nums.pop_back(); if (nums.empty()) m2=0; else { m2=nums.back(); nums.pop_back(); } } if (unfree.count(i)+unfree.count(i-1)+unfree.count(i-2)>=2){ Set(i-2, 0); Set(i-1, 0); set(i, 0); }else{ if (m1==0){ if (m2==0 and !unfree.count(i-1)){ Set(i-1, 1); Set(i-2, 0); Set(i, 0); }else if (m2==1 and !unfree.count(i-1) and !unfree.count(i)){ Set(i, 1); Set(i-1, 1); Set(i-2, 0); }else{ Set(i-2, 1); Set(i, 0); Set(i-1, 0); nums.push_back(m2); } }else{ if (m2==0 and !unfree.count(i-2) and !unfree.count(i)){ Set(i-2, 1); Set(i, 1); Set(i-1, 0); }else if (m2==1 and !unfree.count(i) and !unfree.count(i-1) and !unfree.count(i-2)){ Set(i-2, 1); Set(i-1, 1); Set(i, 1); }else{ if (unfree.count(i)){ Set(i-1, 1); Set(i-2, 1); Set(i, 0); }else{ Set(i, 1); Set(i-2, 0); Set(i-1, 0); } nums.push_back(m2); } } } } }
/* 0 -> 100 00 > 010 01 -> 011 1 -> 001 || 110 10 -> 101 11 -> 111 */ #include "Brunolib.h" #include <bits/stdc++.h> #define ll long long using namespace std; long long Bruno( int N, int A[] ){ vector<ll> nums; // for (ll i=0; i<N; i++) cout << A[i] << endl; for (ll i=2; i<N and nums.size()<60; i+=3){ if (A[i]==0 and A[i-1]==0 and A[i-2]==0) continue; else{ if (A[i-2]==1 and A[i-1]==0 and A[i]==0) nums.push_back(0); else if (A[i]==0 and A[i-1]==1 and A[i-2]==0) { nums.push_back(0); nums.push_back(0); } else if (A[i]==1 and A[i-1]==1 and A[i-2]==0){ nums.push_back(0); nums.push_back(1); }else if (A[i]==1 and A[i-2]==1){ nums.push_back(1); nums.push_back(0); }else if (A[i] and A[i-1] and A[i-2]){ nums.push_back(1); nums.push_back(1); nums.push_back(1); }else{ nums.push_back(1); } } } ll x=0; for (ll i=0; i<60; i++){ if (nums[i]) x+=(1ull<<i); } return x; }

Compilation message (stderr)

# 1번째 컴파일 단계

Anna.cpp: In function 'void Anna(int, long long int, int, int*)':
Anna.cpp:30:45: error: class template argument deduction failed:
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
Anna.cpp:30:45: error: no matching function for call to 'set(long long int&, int)'
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:271:9: 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++/11/bits/stl_set.h:271:9: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   deduced conflicting types for parameter '_InputIterator' ('long long int' and 'int')
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:265:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::initializer_list<_Tp>, const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  265 |       set(initializer_list<value_type> __l, const allocator_type& __a)
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:265:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:259:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::set<_Key, _Compare, _Allocator>&&, const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  259 |       set(set&& __x, const allocator_type& __a)
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:259:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'std::set<_Key, _Compare, _Allocator>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:255:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const std::set<_Key, _Compare, _Allocator>&, const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  255 |       set(const set& __x, const allocator_type& __a)
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:255:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'const std::set<_Key, _Compare, _Allocator>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:251:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  251 |       set(const allocator_type& __a)
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:251:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   candidate expects 1 argument, 2 provided
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:243:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::initializer_list<_Tp>, const _Compare&, const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  243 |       set(initializer_list<value_type> __l,
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:243:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:231:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(std::set<_Key, _Compare, _Allocator>&&)-> std::set<_Key, _Compare, _Alloc>'
  231 |       set(set&&) = default;
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:231:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'std::set<_Key, _Compare, _Allocator>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:223:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const std::set<_Key, _Compare, _Allocator>&)-> std::set<_Key, _Compare, _Alloc>'
  223 |       set(const set&) = default;
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:223:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'const std::set<_Key, _Compare, _Allocator>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:208:9: 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++/11/bits/stl_set.h:208:9: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   deduced conflicting types for parameter '_InputIterator' ('long long int' and 'int')
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:191:9: 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++/11/bits/stl_set.h:191:9: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   deduced conflicting types for parameter '_InputIterator' ('long long int' and 'int')
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/bits/stl_set.h:176:7: note: candidate: 'template<class _Key, class _Compare, class _Alloc> set(const _Compare&, const _Alloc&)-> std::set<_Key, _Compare, _Alloc>'
  176 |       set(const _Compare& __comp,
      |       ^~~
/usr/include/c++/11/bits/stl_set.h:176:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   couldn't deduce template parameter '_Key'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/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++/11/bits/stl_set.h:167:7: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   candidate expects 0 arguments, 2 provided
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/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++/11/bits/stl_set.h:94:11: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'std::set<_Key, _Compare, _Alloc>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/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++/11/bits/stl_set.h:968:5: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/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++/11/bits/stl_set.h:961:5: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   deduced conflicting types for parameter '_InputIterator' ('long long int' and 'int')
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/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++/11/bits/stl_set.h:954:5: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^
In file included from /usr/include/c++/11/set:61,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:87,
                 from Anna.cpp:3:
/usr/include/c++/11/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++/11/bits/stl_set.h:945:5: note:   template argument deduction/substitution failed:
Anna.cpp:30:45: note:   deduced conflicting types for parameter '_InputIterator' ('long long int' and 'int')
   30 |           Set(i-2, 0); Set(i-1, 0); set(i, 0);
      |                                             ^