Submission #624091

#TimeUsernameProblemLanguageResultExecution timeMemory
624091jophyyjhPacking Biscuits (IOI20_biscuits)C++14
Compilation error
0 ms0 KiB
/** * Binary. Hmm, interesting. I started with [S2], which I solved with recursion in * O(kq). The basic idea is to treat two 2^i biscuits in the bag as one 2^(i+1). * * A few greedy observations: * (1) Given x, can we determine if it's possible? Well, we can simply iterate i * from large to small. If the additional tastiness x we still need for a * certain bag satisfies x >= 2^i, put a biscuit 2^i in the bag if there's one. * (2) Biscuits of the same type can be distributed as evenly as possible, i.e. * there is an optimal partition s.t. for every i * |#2^i_biscuits_in_bag_1 - #2^i_biscuits_in_big_2| <= 1. * (3) Unlike (1), (2), we consider from small to large. If x is odd, each bag needs * at least 1 2^0 biscuit. After that, every 2 2^O biscuits can be grouped to * form 1 2^1 biscuit, so we can add this num to the original num of 2^1 * biscuits. Well, let's write this recursively: * def find(): * total = 0 * if #2^0 >= x: * add floor((#2^0 - x) / 2) to #2^1 and recurse downdwards * add floor(#2^0 / 2) to 2^1 and recurse downwards * ... * * Can we AC this problem with (3)? I guess that the num of configurations given to * find() isn't too many, so we can optimize it with memoization. Indeed, we can * prove that in each level of find(), the num. of unique calls the next level of * find() is bounded by x. This is because x >= x/2 + x/4 + x/8 + x/16 + .... [S1-3] * are solved. * * In impl1, the function search(p, first) doesn't decrease as first increases. * Furthermore, if search(p, w) and search(p, z) are both called, |w-z| <= x. * * Time Complexity: O(xqk * log(xk)) (partial solution) * Implementation 1 (Only solves [S1-3], may solve [S4]) */ #include <bits/stdc++.h> #include "biscuits.h" typedef long long ll; ll x; std::vector<ll> a; struct pair_t { int p; ll first; }; inline bool operator<(const pair_t& p1, const pair_t& p2) { return p1.p < p2.p || (p1.p == p2.p && p1.first < p2.first); } std::unordered_map<pair_t, ll> cache; ll search(int p, ll first) { if (cache.find(pair_t{p, first}) == cache.end()) { int k = a.size(); if (p == k - 1) return first / x + 1; ll total = search(p + 1, a[p + 1] + first / 2); if (first >= x) total += search(p + 1, a[p + 1] + (first - x) / 2); cache[pair_t{p, first}] = total; } return cache[pair_t{p, first}]; } ll count_tastiness(ll _x, std::vector<ll> _a) { cache.clear(); x = _x, a = _a; std::cerr << "[debug] x is: " << x << std::endl; for (int i = 0; i < 30; i++) std::cerr << "[debug] a_0 = " << i << ": " << search(0, i) << std::endl; return -1; }

Compilation message (stderr)

biscuits.cpp:54:32: error: use of deleted function 'std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_map() [with _Key = pair_t; _Tp = long long int; _Hash = std::hash<pair_t>; _Pred = std::equal_to<pair_t>; _Alloc = std::allocator<std::pair<const pair_t, long long int> >]'
   54 | std::unordered_map<pair_t, ll> cache;
      |                                ^~~~~
In file included from /usr/include/c++/10/unordered_map:47,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:117,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/unordered_map.h:141:7: note: 'std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_map() [with _Key = pair_t; _Tp = long long int; _Hash = std::hash<pair_t>; _Pred = std::equal_to<pair_t>; _Alloc = std::allocator<std::pair<const pair_t, long long int> >]' is implicitly deleted because the default definition would be ill-formed:
  141 |       unordered_map() = default;
      |       ^~~~~~~~~~~~~
/usr/include/c++/10/bits/unordered_map.h:141:7: error: use of deleted function 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::_Hashtable() [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _Alloc = std::allocator<std::pair<const pair_t, long long int> >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<pair_t>; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, false, true>]'
In file included from /usr/include/c++/10/unordered_map:46,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:117,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/hashtable.h:451:7: note: 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::_Hashtable() [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _Alloc = std::allocator<std::pair<const pair_t, long long int> >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<pair_t>; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, false, true>]' is implicitly deleted because the default definition would be ill-formed:
  451 |       _Hashtable() = default;
      |       ^~~~~~~~~~
/usr/include/c++/10/bits/hashtable.h:451:7: error: use of deleted function 'std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::_Hashtable_base() [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<pair_t>; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _Traits = std::__detail::_Hashtable_traits<true, false, true>]'
In file included from /usr/include/c++/10/bits/hashtable.h:35,
                 from /usr/include/c++/10/unordered_map:46,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:117,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/hashtable_policy.h:1791:5: note: 'std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::_Hashtable_base() [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<pair_t>; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _Traits = std::__detail::_Hashtable_traits<true, false, true>]' is implicitly deleted because the default definition would be ill-formed:
 1791 |     _Hashtable_base() = default;
      |     ^~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1791:5: error: use of deleted function 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::_Hash_code_base() [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _ExtractKey = std::__detail::_Select1st; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing]'
/usr/include/c++/10/bits/hashtable_policy.h:1368:7: note: 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::_Hash_code_base() [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _ExtractKey = std::__detail::_Select1st; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing]' is implicitly deleted because the default definition would be ill-formed:
 1368 |       _Hash_code_base() = default;
      |       ^~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1368:7: error: use of deleted function 'std::__detail::_Hashtable_ebo_helper<_Nm, _Tp, true>::_Hashtable_ebo_helper() [with int _Nm = 1; _Tp = std::hash<pair_t>]'
/usr/include/c++/10/bits/hashtable_policy.h:1112:7: note: 'std::__detail::_Hashtable_ebo_helper<_Nm, _Tp, true>::_Hashtable_ebo_helper() [with int _Nm = 1; _Tp = std::hash<pair_t>]' is implicitly deleted because the default definition would be ill-formed:
 1112 |       _Hashtable_ebo_helper() = default;
      |       ^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1112:7: error: use of deleted function 'std::hash<pair_t>::hash()'
In file included from /usr/include/c++/10/bits/basic_string.h:6787,
                 from /usr/include/c++/10/string:55,
                 from /usr/include/c++/10/bits/locale_classes.h:40,
                 from /usr/include/c++/10/bits/ios_base.h:41,
                 from /usr/include/c++/10/ios:42,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/functional_hash.h:101:12: note: 'std::hash<pair_t>::hash()' is implicitly deleted because the default definition would be ill-formed:
  101 |     struct hash : __hash_enum<_Tp>
      |            ^~~~
/usr/include/c++/10/bits/functional_hash.h:101:12: error: no matching function for call to 'std::__hash_enum<pair_t, false>::__hash_enum()'
/usr/include/c++/10/bits/functional_hash.h:82:7: note: candidate: 'std::__hash_enum<_Tp, <anonymous> >::__hash_enum(std::__hash_enum<_Tp, <anonymous> >&&) [with _Tp = pair_t; bool <anonymous> = false]'
   82 |       __hash_enum(__hash_enum&&);
      |       ^~~~~~~~~~~
/usr/include/c++/10/bits/functional_hash.h:82:7: note:   candidate expects 1 argument, 0 provided
/usr/include/c++/10/bits/functional_hash.h:101:12: error: 'std::__hash_enum<_Tp, <anonymous> >::~__hash_enum() [with _Tp = pair_t; bool <anonymous> = false]' is private within this context
  101 |     struct hash : __hash_enum<_Tp>
      |            ^~~~
/usr/include/c++/10/bits/functional_hash.h:83:7: note: declared private here
   83 |       ~__hash_enum();
      |       ^
In file included from /usr/include/c++/10/bits/hashtable.h:35,
                 from /usr/include/c++/10/unordered_map:46,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:117,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/hashtable_policy.h:1112:7: error: use of deleted function 'std::hash<pair_t>::~hash()'
 1112 |       _Hashtable_ebo_helper() = default;
      |       ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/10/bits/basic_string.h:6787,
                 from /usr/include/c++/10/string:55,
                 from /usr/include/c++/10/bits/locale_classes.h:40,
                 from /usr/include/c++/10/bits/ios_base.h:41,
                 from /usr/include/c++/10/ios:42,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/functional_hash.h:101:12: note: 'std::hash<pair_t>::~hash()' is implicitly deleted because the default definition would be ill-formed:
  101 |     struct hash : __hash_enum<_Tp>
      |            ^~~~
/usr/include/c++/10/bits/functional_hash.h:101:12: error: 'std::__hash_enum<_Tp, <anonymous> >::~__hash_enum() [with _Tp = pair_t; bool <anonymous> = false]' is private within this context
/usr/include/c++/10/bits/functional_hash.h:83:7: note: declared private here
   83 |       ~__hash_enum();
      |       ^
In file included from /usr/include/c++/10/bits/hashtable.h:35,
                 from /usr/include/c++/10/unordered_map:46,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:117,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/hashtable_policy.h:1368:7: error: use of deleted function 'std::__detail::_Hashtable_ebo_helper<1, std::hash<pair_t>, true>::~_Hashtable_ebo_helper()'
 1368 |       _Hash_code_base() = default;
      |       ^~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1109:12: note: 'std::__detail::_Hashtable_ebo_helper<1, std::hash<pair_t>, true>::~_Hashtable_ebo_helper()' is implicitly deleted because the default definition would be ill-formed:
 1109 |     struct _Hashtable_ebo_helper<_Nm, _Tp, true>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1109:12: error: use of deleted function 'std::hash<pair_t>::~hash()'
/usr/include/c++/10/bits/hashtable_policy.h:1791:5: error: use of deleted function 'std::__detail::_Hash_code_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, true>::~_Hash_code_base()'
 1791 |     _Hashtable_base() = default;
      |     ^~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1341:12: note: 'std::__detail::_Hash_code_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, true>::~_Hash_code_base()' is implicitly deleted because the default definition would be ill-formed:
 1341 |     struct _Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2,
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1342 |       _Default_ranged_hash, true>
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1341:12: error: use of deleted function 'std::__detail::_Hashtable_ebo_helper<1, std::hash<pair_t>, true>::~_Hashtable_ebo_helper()'
In file included from /usr/include/c++/10/unordered_map:46,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:117,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/hashtable.h:451:7: error: use of deleted function 'std::__detail::_Hashtable_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::equal_to<pair_t>, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, false, true> >::~_Hashtable_base()'
  451 |       _Hashtable() = default;
      |       ^~~~~~~~~~
In file included from /usr/include/c++/10/bits/hashtable.h:35,
                 from /usr/include/c++/10/unordered_map:46,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:117,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/hashtable_policy.h:1725:10: note: 'std::__detail::_Hashtable_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::equal_to<pair_t>, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, false, true> >::~_Hashtable_base()' is implicitly deleted because the default definition would be ill-formed:
 1725 |   struct _Hashtable_base
      |          ^~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1725:10: error: use of deleted function 'std::__detail::_Hash_code_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, true>::~_Hash_code_base()'
/usr/include/c++/10/bits/hashtable_policy.h: In instantiation of 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::__hash_code std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::_M_hash_code(const _Key&) const [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _ExtractKey = std::__detail::_Select1st; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, std::__detail::_Default_ranged_hash, true>::__hash_code = long unsigned int]':
/usr/include/c++/10/bits/hashtable.h:1452:46:   required from 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::iterator std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::find(const key_type&) [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _Alloc = std::allocator<std::pair<const pair_t, long long int> >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<pair_t>; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, false, true>; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::iterator = std::__detail::_Hashtable_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::equal_to<pair_t>, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, false, true> >::iterator; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::key_type = pair_t]'
/usr/include/c++/10/bits/unordered_map.h:920:25:   required from 'std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::iterator std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::find(const key_type&) [with _Key = pair_t; _Tp = long long int; _Hash = std::hash<pair_t>; _Pred = std::equal_to<pair_t>; _Alloc = std::allocator<std::pair<const pair_t, long long int> >; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::iterator = std::__detail::_Hashtable_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::equal_to<pair_t>, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, false, true> >::iterator; std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::key_type = pair_t]'
biscuits.cpp:57:36:   required from here
/usr/include/c++/10/bits/hashtable_policy.h:1377:16: error: static assertion failed: hash function must be invocable with an argument of key type
 1377 |  static_assert(__is_invocable<const _H1&, const _Key&>{},
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/10/bits/hashtable_policy.h:1379:16: error: no match for call to '(const std::hash<pair_t>) (const pair_t&)'
 1379 |  return _M_h1()(__k);
      |         ~~~~~~~^~~~~
In file included from /usr/include/c++/10/string:48,
                 from /usr/include/c++/10/bits/locale_classes.h:40,
                 from /usr/include/c++/10/bits/ios_base.h:41,
                 from /usr/include/c++/10/ios:42,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from biscuits.cpp:36:
/usr/include/c++/10/bits/stl_function.h: In instantiation of 'constexpr bool std::equal_to<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = pair_t]':
/usr/include/c++/10/bits/hashtable_policy.h:1804:12:   required from 'bool std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::_M_equals(const _Key&, std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::__hash_code, std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::__node_type*) const [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<pair_t>; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _Traits = std::__detail::_Hashtable_traits<true, false, true>; std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::__hash_code = long unsigned int; std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits>::__node_type = std::__detail::_Hashtable_base<pair_t, std::pair<const pair_t, long long int>, std::__detail::_Select1st, std::equal_to<pair_t>, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, false, true> >::__node_type]'
/usr/include/c++/10/bits/hashtable.h:1580:23:   required from 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::__node_base* std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::_M_find_before_node(std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::size_type, const key_type&, std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::__hash_code) const [with _Key = pair_t; _Value = std::pair<const pair_t, long long int>; _Alloc = std::allocator<std::pair<const pair_t, long long int> >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<pair_t>; _H1 = std::hash<pair_t>; _H2 = std::__detail::_Mod_range_hashing; _Hash = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, false, true>; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::__node_base = std::_Hashtable<pair_t, std::pair<const pair_t, long long int>, std::allocator<std::pair<const pair_t, long long int> >, std::__detail::_Select1st, std::equal_to<pair_t>, std::hash<pair_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::__node_base; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::size_type = long unsigned int; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::key_type = pair_t; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits>::__hash_code = long unsigned int]'
/usr/include/c++/10/bits/hashtable.h:693:28:   required from 'st