# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1179319 | andriy57 | Xor Sort (eJOI20_xorsort) | C++20 | Compilation error | 0 ms | 0 KiB |
#define _CRT_SECURE_NO_WARNINGS
#include <bits/stdc++.h>
using namespace std;
#define forin for(int i = 1; i <= n; i++)
#define stforin for(int i = 0; i < n; i++)
#define forim for(int i = 1; i <= m; i++)
#define forjn for(int j = 1; j <= n; j++)
#define forch(j, n) for(int i = j; i <= n; i++)
#define forch2(i, j, n) for(int i = j; i <= n; i++)
#define forjm for(int j = 1; j <= m; j++)
#define lol long long
#define lb long double
#define endl '\n'
#define debug cout << "Completed" << endl;
#define fix(n, m) cout << fixed; cout.precision(b); cout << n << endl
#define Yes cout << "YES" << endl
#define No cout << "NO" << endl
#define bads cout << -1 << endl
#define pll pair<lol, lol>
#define mod 998244353
#define fst first
#define snd second
#define inf 1e15
#define tofix cin
; string sbuf;
ostringstream buf(sbuf);
istringstream atcin(sbuf);
lol gcd(lol a, lol b) {
while (a != 0 && b != 0) if (a > b) a %= b; else b %= a;
return a + b;
}
lol lcm(lol a, lol b) {
return a / gcd(a, b) * b;
}
bool issqrt(lol n) {
lb x = sqrt(n);
if (x == (lol)x) return 1;
return 0;
}
lol easy(lol n) {
if (n == 1) return 0;
for (int i = 2; i * i <= n; i++) if (n % i == 0) return 0;
return 1;
}
string bin(lol v) {
string ans;
while (v != 0) {
ans += to_string((v % 2));
v /= 2;
}
return ans;
}
//priority_queue <pll, vector<pll>, greater<pll>> q
const long long N = 2e5 + 100;
lol ts, n, a[N], hmm;
unordered_multiset<pll> ans;
void solve() {
cin >> n;
stforin cin >> a[i];
while (!hmm) {
hmm = 1;
forch(0, n - 2) if (a[i] >= a[i + 1]) {
hmm = 0;
a[i] ^= a[i + 1];
ans.insert({ i + 1, i + 2 });
break;
}
}
cout << ans.size() << endl;
for (auto el : ans) cout << el.first << " " << el.second << endl;
}
int main() {
ts = 1;
//cin >> ts;
while(ts--) solve();
return 0;
}
Compilation message (stderr)
xorsort.cpp:56:25: error: use of deleted function 'std::unordered_multiset<_Value, _Hash, _Pred, _Alloc>::unordered_multiset() [with _Value = std::pair<long long int, long long int>; _Hash = std::hash<std::pair<long long int, long long int> >; _Pred = std::equal_to<std::pair<long long int, long long int> >; _Alloc = std::allocator<std::pair<long long int, long long int> >]' 56 | unordered_multiset<pll> ans; | ^~~ In file included from /usr/include/c++/11/unordered_set:47, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:118, from xorsort.cpp:2: /usr/include/c++/11/bits/unordered_set.h:1000:7: note: 'std::unordered_multiset<_Value, _Hash, _Pred, _Alloc>::unordered_multiset() [with _Value = std::pair<long long int, long long int>; _Hash = std::hash<std::pair<long long int, long long int> >; _Pred = std::equal_to<std::pair<long long int, long long int> >; _Alloc = std::allocator<std::pair<long long int, long long int> >]' is implicitly deleted because the default definition would be ill-formed: 1000 | unordered_multiset() = default; | ^~~~~~~~~~~~~~~~~~ /usr/include/c++/11/bits/unordered_set.h:1000:7: error: use of deleted function 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::_Hashtable() [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, true, false>]' In file included from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable.h:528:7: note: 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::_Hashtable() [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, true, false>]' is implicitly deleted because the default definition would be ill-formed: 528 | _Hashtable() = default; | ^~~~~~~~~~ /usr/include/c++/11/bits/hashtable.h:528:7: error: use of deleted function 'std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _Traits>::_Hashtable_base() [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _Traits = std::__detail::_Hashtable_traits<true, true, false>]' In file included from /usr/include/c++/11/bits/hashtable.h:35, from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable_policy.h:1604:7: note: 'std::__detail::_Hashtable_base<_Key, _Value, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _Traits>::_Hashtable_base() [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _Traits = std::__detail::_Hashtable_traits<true, true, false>]' is implicitly deleted because the default definition would be ill-formed: 1604 | _Hashtable_base() = default; | ^~~~~~~~~~~~~~~ /usr/include/c++/11/bits/hashtable_policy.h:1604:7: error: use of deleted function 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _Hash, _RangeHash, _Unused, __cache_hash_code>::_Hash_code_base() [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _ExtractKey = std::__detail::_Identity; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; bool __cache_hash_code = true]' /usr/include/c++/11/bits/hashtable_policy.h: In instantiation of 'std::__detail::_Hashtable_ebo_helper<_Nm, _Tp, true>::_Hashtable_ebo_helper() [with int _Nm = 1; _Tp = std::hash<std::pair<long long int, long long int> >]': /usr/include/c++/11/bits/hashtable_policy.h:1210:7: required from here /usr/include/c++/11/bits/hashtable_policy.h:1127:49: error: use of deleted function 'std::hash<std::pair<long long int, long long int> >::hash()' 1127 | _Hashtable_ebo_helper() noexcept(noexcept(_Tp())) : _Tp() { } | ^~~~~ In file included from /usr/include/c++/11/string_view:42, from /usr/include/c++/11/bits/basic_string.h:48, from /usr/include/c++/11/string:55, 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 xorsort.cpp:2: /usr/include/c++/11/bits/functional_hash.h:102:12: note: 'std::hash<std::pair<long long int, long long int> >::hash()' is implicitly deleted because the default definition would be ill-formed: 102 | struct hash : __hash_enum<_Tp> | ^~~~ /usr/include/c++/11/bits/functional_hash.h:102:12: error: no matching function for call to 'std::__hash_enum<std::pair<long long int, long long int>, false>::__hash_enum()' /usr/include/c++/11/bits/functional_hash.h:83:7: note: candidate: 'std::__hash_enum<_Tp, <anonymous> >::__hash_enum(std::__hash_enum<_Tp, <anonymous> >&&) [with _Tp = std::pair<long long int, long long int>; bool <anonymous> = false]' 83 | __hash_enum(__hash_enum&&); | ^~~~~~~~~~~ /usr/include/c++/11/bits/functional_hash.h:83:7: note: candidate expects 1 argument, 0 provided /usr/include/c++/11/bits/functional_hash.h:102:12: error: 'std::__hash_enum<_Tp, <anonymous> >::~__hash_enum() [with _Tp = std::pair<long long int, long long int>; bool <anonymous> = false]' is private within this context 102 | struct hash : __hash_enum<_Tp> | ^~~~ /usr/include/c++/11/bits/functional_hash.h:84:7: note: declared private here 84 | ~__hash_enum(); | ^ In file included from /usr/include/c++/11/bits/hashtable.h:35, from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable_policy.h:1210:7: note: 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _Hash, _RangeHash, _Unused, __cache_hash_code>::_Hash_code_base() [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _ExtractKey = std::__detail::_Identity; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; bool __cache_hash_code = true]' is implicitly deleted because the default definition would be ill-formed: 1210 | _Hash_code_base() = default; | ^~~~~~~~~~~~~~~ /usr/include/c++/11/bits/hashtable_policy.h:1210:7: error: use of deleted function 'std::__detail::_Hashtable_ebo_helper<1, std::hash<std::pair<long long int, long long int> >, true>::~_Hashtable_ebo_helper()' /usr/include/c++/11/bits/hashtable_policy.h:1124:12: note: 'std::__detail::_Hashtable_ebo_helper<1, std::hash<std::pair<long long int, long long int> >, true>::~_Hashtable_ebo_helper()' is implicitly deleted because the default definition would be ill-formed: 1124 | struct _Hashtable_ebo_helper<_Nm, _Tp, true> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/11/bits/hashtable_policy.h:1124:12: error: use of deleted function 'std::hash<std::pair<long long int, long long int> >::~hash()' In file included from /usr/include/c++/11/string_view:42, from /usr/include/c++/11/bits/basic_string.h:48, from /usr/include/c++/11/string:55, 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 xorsort.cpp:2: /usr/include/c++/11/bits/functional_hash.h:102:12: note: 'std::hash<std::pair<long long int, long long int> >::~hash()' is implicitly deleted because the default definition would be ill-formed: 102 | struct hash : __hash_enum<_Tp> | ^~~~ /usr/include/c++/11/bits/functional_hash.h:102:12: error: 'std::__hash_enum<_Tp, <anonymous> >::~__hash_enum() [with _Tp = std::pair<long long int, long long int>; bool <anonymous> = false]' is private within this context /usr/include/c++/11/bits/functional_hash.h:84:7: note: declared private here 84 | ~__hash_enum(); | ^ In file included from /usr/include/c++/11/bits/hashtable.h:35, from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable_policy.h:1604:7: error: use of deleted function 'std::__detail::_Hash_code_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::__detail::_Identity, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, true>::~_Hash_code_base()' 1604 | _Hashtable_base() = default; | ^~~~~~~~~~~~~~~ /usr/include/c++/11/bits/hashtable_policy.h:1188:12: note: 'std::__detail::_Hash_code_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::__detail::_Identity, std::hash<std::pair<long long int, long long int> >, 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: 1188 | struct _Hash_code_base | ^~~~~~~~~~~~~~~ /usr/include/c++/11/bits/hashtable_policy.h:1188:12: error: use of deleted function 'std::__detail::_Hashtable_ebo_helper<1, std::hash<std::pair<long long int, long long int> >, true>::~_Hashtable_ebo_helper()' In file included from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable.h:528:7: error: use of deleted function 'std::__detail::_Hashtable_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, true, false> >::~_Hashtable_base()' 528 | _Hashtable() = default; | ^~~~~~~~~~ In file included from /usr/include/c++/11/bits/hashtable.h:35, from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable_policy.h:1561:12: note: 'std::__detail::_Hashtable_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, true, false> >::~_Hashtable_base()' is implicitly deleted because the default definition would be ill-formed: 1561 | struct _Hashtable_base | ^~~~~~~~~~~~~~~ /usr/include/c++/11/bits/hashtable_policy.h:1561:12: error: use of deleted function 'std::__detail::_Hash_code_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::__detail::_Identity, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, true>::~_Hash_code_base()' In file included from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable.h:528:7: error: use of deleted function 'constexpr std::_Enable_default_constructor<false, _Tag>::_Enable_default_constructor() [with _Tag = std::__detail::_Hash_node_base]' 528 | _Hashtable() = default; | ^~~~~~~~~~ In file included from /usr/include/c++/11/bits/hashtable.h:36, from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/enable_special_members.h:113:15: note: declared here 113 | constexpr _Enable_default_constructor() noexcept = delete; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/11/bits/hashtable.h:35, from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable_policy.h: In instantiation of 'std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _Hash, _RangeHash, _Unused, __cache_hash_code>::__hash_code std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _Hash, _RangeHash, _Unused, __cache_hash_code>::_M_hash_code(const _Key&) const [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _ExtractKey = std::__detail::_Identity; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; bool __cache_hash_code = true; std::__detail::_Hash_code_base<_Key, _Value, _ExtractKey, _Hash, _RangeHash, _Unused, __cache_hash_code>::__hash_code = long unsigned int]': /usr/include/c++/11/bits/hashtable.h:2131:41: required from 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::iterator std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::_M_insert(std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::const_iterator, _Arg&&, const _NodeGenerator&, std::false_type) [with _Arg = std::pair<long long int, long long int>; _NodeGenerator = std::__detail::_AllocNode<std::allocator<std::__detail::_Hash_node<std::pair<long long int, long long int>, true> > >; _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, true, false>; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::iterator = std::__detail::_Insert_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::allocator<std::pair<long long int, long long int> >, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, true, false> >::iterator; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::const_iterator = std::__detail::_Insert_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::allocator<std::pair<long long int, long long int> >, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, true, false> >::const_iterator; std::false_type = std::integral_constant<bool, false>]' /usr/include/c++/11/bits/hashtable.h:881:20: required from 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::iterator std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::_M_insert(_Arg&&, const _NodeGenerator&, std::false_type) [with _Arg = std::pair<long long int, long long int>; _NodeGenerator = std::__detail::_AllocNode<std::allocator<std::__detail::_Hash_node<std::pair<long long int, long long int>, true> > >; _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, true, false>; std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::iterator = std::__detail::_Insert_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::allocator<std::pair<long long int, long long int> >, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, true, false> >::iterator; std::false_type = std::integral_constant<bool, false>]' /usr/include/c++/11/bits/hashtable_policy.h:986:22: required from 'std::__detail::_Insert<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits, true>::__ireturn_type std::__detail::_Insert<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits, true>::insert(std::__detail::_Insert<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits, true>::value_type&&) [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, true, false>; std::__detail::_Insert<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits, true>::__ireturn_type = std::__detail::_Insert<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::allocator<std::pair<long long int, long long int> >, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, true, false>, true>::__ireturn_type; std::__detail::_Insert<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits, true>::value_type = std::pair<long long int, long long int>]' /usr/include/c++/11/bits/unordered_set.h:1273:27: required from 'std::unordered_multiset<_Value, _Hash, _Pred, _Alloc>::iterator std::unordered_multiset<_Value, _Hash, _Pred, _Alloc>::insert(std::unordered_multiset<_Value, _Hash, _Pred, _Alloc>::value_type&&) [with _Value = std::pair<long long int, long long int>; _Hash = std::hash<std::pair<long long int, long long int> >; _Pred = std::equal_to<std::pair<long long int, long long int> >; _Alloc = std::allocator<std::pair<long long int, long long int> >; std::unordered_multiset<_Value, _Hash, _Pred, _Alloc>::iterator = std::__detail::_Insert_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::allocator<std::pair<long long int, long long int> >, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, true, false> >::iterator; std::unordered_multiset<_Value, _Hash, _Pred, _Alloc>::value_type = std::pair<long long int, long long int>]' xorsort.cpp:65:23: required from here /usr/include/c++/11/bits/hashtable_policy.h:1217:23: error: static assertion failed: hash function must be invocable with an argument of key type 1217 | static_assert(__is_invocable<const _Hash&, const _Key&>{}, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/11/bits/hashtable_policy.h:1217:23: note: 'std::__is_invocable<const std::hash<std::pair<long long int, long long int> >&, const std::pair<long long int, long long int>&>{}' evaluates to false /usr/include/c++/11/bits/hashtable_policy.h:1219:25: error: no match for call to '(const std::hash<std::pair<long long int, long long int> >) (const std::pair<long long int, long long int>&)' 1219 | return _M_hash()(__k); | ~~~~~~~~~^~~~~ In file included from /usr/include/c++/11/unordered_map:46, from /usr/include/c++/11/functional:61, from /usr/include/c++/11/pstl/glue_algorithm_defs.h:13, from /usr/include/c++/11/algorithm:74, from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:65, from xorsort.cpp:2: /usr/include/c++/11/bits/hashtable.h: In instantiation of 'std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::~_Hashtable() [with _Key = std::pair<long long int, long long int>; _Value = std::pair<long long int, long long int>; _Alloc = std::allocator<std::pair<long long int, long long int> >; _ExtractKey = std::__detail::_Identity; _Equal = std::equal_to<std::pair<long long int, long long int> >; _Hash = std::hash<std::pair<long long int, long long int> >; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<true, true, false>]': /usr/include/c++/11/bits/unordered_set.h:963:11: required from here /usr/include/c++/11/bits/hashtable.h:1534:5: error: use of deleted function 'std::__detail::_Hashtable_base<std::pair<long long int, long long int>, std::pair<long long int, long long int>, std::__detail::_Identity, std::equal_to<std::pair<long long int, long long int> >, std::hash<std::pair<long long int, long long int> >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Hashtable_traits<true, true, false> >::~_Hashtable_base()' 1534 | } | ^