Submission #1207318

#TimeUsernameProblemLanguageResultExecution timeMemory
1207318agusstGame (IOI14_game)C++20
Compilation error
0 ms0 KiB
#include "game.h" #include <bits/stdc++.h> #define dbg(x) cerr << #x << ": " << x << "\n"; using namespace std; int n; set<int> x; vector<int> arr, size, activado; map<int, int> single, grupal; void join(int a, int b){ int u = arr[b]; for(int i = 0; i < n; i++){ if(arr[i] == u){ size[a]++; arr[i] = arr[a]; } } } void initialize(int N) { n = N; arr.assign(n, 0); iota(arr.begin(), arr.end(), 0); activado.assign(n, 0); size.assign(n, 1); } int hasEdge(int u, int v) { if(!activado[u] and !activado[v]){ activado[u] = 1; activado[v] = 1; int couenta = 0; for(int i = 0; i < n; i++){ if(!activado[i]){ couenta++; } } single[u] = 2 * couenta; join(u, v); x.insert(u); return 1; } if(activado[u] and !activado[v]) swap(u, v); u = arr[u]; v = arr[v]; if(!single.count(u)){ for(const int &i : x){ single[u] += size[i]; } } single[u]--; single[v]--; if(!single[u]){ activado[u] = 1; join(v, u); return 1; } return 0; }

Compilation message (stderr)

game.cpp: In function 'void join(int, int)':
game.cpp:14:13: error: reference to 'size' is ambiguous
   14 |             size[a]++;
      |             ^~~~
In file included from /usr/include/c++/11/string:54,
                 from /usr/include/c++/11/bits/locale_classes.h:40,
                 from /usr/include/c++/11/bits/ios_base.h:41,
                 from /usr/include/c++/11/ios:42,
                 from /usr/include/c++/11/istream:38,
                 from /usr/include/c++/11/sstream:38,
                 from /usr/include/c++/11/complex:45,
                 from /usr/include/c++/11/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54,
                 from game.cpp:2:
/usr/include/c++/11/bits/range_access.h:254:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  254 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/11/bits/range_access.h:245:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  245 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
game.cpp:8:18: note:                 'std::vector<int> size'
    8 | vector<int> arr, size, activado;
      |                  ^~~~
game.cpp: In function 'void initialize(int)':
game.cpp:25:5: error: reference to 'size' is ambiguous
   25 |     size.assign(n, 1);
      |     ^~~~
In file included from /usr/include/c++/11/string:54,
                 from /usr/include/c++/11/bits/locale_classes.h:40,
                 from /usr/include/c++/11/bits/ios_base.h:41,
                 from /usr/include/c++/11/ios:42,
                 from /usr/include/c++/11/istream:38,
                 from /usr/include/c++/11/sstream:38,
                 from /usr/include/c++/11/complex:45,
                 from /usr/include/c++/11/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54,
                 from game.cpp:2:
/usr/include/c++/11/bits/range_access.h:254:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  254 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/11/bits/range_access.h:245:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  245 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
game.cpp:8:18: note:                 'std::vector<int> size'
    8 | vector<int> arr, size, activado;
      |                  ^~~~
game.cpp: In function 'int hasEdge(int, int)':
game.cpp:48:26: error: reference to 'size' is ambiguous
   48 |             single[u] += size[i];
      |                          ^~~~
In file included from /usr/include/c++/11/string:54,
                 from /usr/include/c++/11/bits/locale_classes.h:40,
                 from /usr/include/c++/11/bits/ios_base.h:41,
                 from /usr/include/c++/11/ios:42,
                 from /usr/include/c++/11/istream:38,
                 from /usr/include/c++/11/sstream:38,
                 from /usr/include/c++/11/complex:45,
                 from /usr/include/c++/11/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54,
                 from game.cpp:2:
/usr/include/c++/11/bits/range_access.h:254:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  254 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/11/bits/range_access.h:245:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  245 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
game.cpp:8:18: note:                 'std::vector<int> size'
    8 | vector<int> arr, size, activado;
      |                  ^~~~