santa.cpp: In function 'int32_t main()':
santa.cpp:121:62: error: no matching function for call to 'std::multiset<long long int>::find(std::_Rb_tree_const_iterator<long long int>&)'
gifts.erase(gifts.find(it));
^
In file included from /usr/include/c++/7/set:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:87,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_multiset.h:746:7: note: candidate: std::multiset<_Key, _Compare, _Alloc>::iterator std::multiset<_Key, _Compare, _Alloc>::find(const key_type&) [with _Key = long long int; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>; std::multiset<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<long long int>; std::multiset<_Key, _Compare, _Alloc>::key_type = long long int]
find(const key_type& __x)
^~~~
/usr/include/c++/7/bits/stl_multiset.h:746:7: note: no known conversion for argument 1 from 'std::_Rb_tree_const_iterator<long long int>' to 'const key_type& {aka const long long int&}'
/usr/include/c++/7/bits/stl_multiset.h:750:7: note: candidate: std::multiset<_Key, _Compare, _Alloc>::const_iterator std::multiset<_Key, _Compare, _Alloc>::find(const key_type&) const [with _Key = long long int; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>; std::multiset<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<long long int>; std::multiset<_Key, _Compare, _Alloc>::key_type = long long int]
find(const key_type& __x) const
^~~~
/usr/include/c++/7/bits/stl_multiset.h:750:7: note: no known conversion for argument 1 from 'std::_Rb_tree_const_iterator<long long int>' to 'const key_type& {aka const long long int&}'
/usr/include/c++/7/bits/stl_multiset.h:756:2: note: candidate: template<class _Kt> decltype (std::multiset<_Key, _Compare, _Alloc>::iterator{((std::multiset<_Key, _Compare, _Alloc>*)this)->std::multiset<_Key, _Compare, _Alloc>::_M_t._M_find_tr(__x)}) std::multiset<_Key, _Compare, _Alloc>::find(const _Kt&) [with _Kt = _Kt; _Key = long long int; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>]
find(const _Kt& __x)
^~~~
/usr/include/c++/7/bits/stl_multiset.h:756:2: note: template argument deduction/substitution failed:
/usr/include/c++/7/bits/stl_multiset.h: In substitution of 'template<class _Kt> decltype (std::multiset<long long int>::iterator{((std::multiset<long long int>*)this)->std::multiset<long long int>::_M_t.std::_Rb_tree<long long int, long long int, std::_Identity<long long int>, std::less<long long int>, std::allocator<long long int> >::_M_find_tr(__x)}) std::multiset<long long int>::find<_Kt>(const _Kt&) [with _Kt = std::_Rb_tree_const_iterator<long long int>]':
santa.cpp:121:62: required from here
/usr/include/c++/7/bits/stl_multiset.h:756:2: error: no matching function for call to 'std::_Rb_tree<long long int, long long int, std::_Identity<long long int>, std::less<long long int>, std::allocator<long long int> >::_M_find_tr(const std::_Rb_tree_const_iterator<long long int>&)'
In file included from /usr/include/c++/7/map:60:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:81,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_tree.h:1212:2: note: candidate: template<class _Kt, class _Req> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_find_tr(const _Kt&) [with _Kt = _Kt; _Req = _Req; _Key = long long int; _Val = long long int; _KeyOfValue = std::_Identity<long long int>; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>]
_M_find_tr(const _Kt& __k)
^~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:1212:2: note: template argument deduction/substitution failed:
/usr/include/c++/7/bits/stl_tree.h:1209:9: error: no type named 'type' in 'struct std::__has_is_transparent<std::less<long long int>, std::_Rb_tree_const_iterator<long long int>, void>'
typename _Req =
^~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:1222:2: note: candidate: template<class _Kt, class _Req> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_find_tr(const _Kt&) const [with _Kt = _Kt; _Req = _Req; _Key = long long int; _Val = long long int; _KeyOfValue = std::_Identity<long long int>; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>]
_M_find_tr(const _Kt& __k) const
^~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:1222:2: note: template argument deduction/substitution failed:
/usr/include/c++/7/bits/stl_tree.h:1219:9: error: no type named 'type' in 'struct std::__has_is_transparent<std::less<long long int>, std::_Rb_tree_const_iterator<long long int>, void>'
typename _Req =
^~~~~~~~
In file included from /usr/include/c++/7/set:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:87,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_multiset.h:756:2: error: no matching function for call to 'std::_Rb_tree_const_iterator<long long int>::_Rb_tree_const_iterator(<brace-enclosed initializer list>)'
find(const _Kt& __x)
^~~~
In file included from /usr/include/c++/7/map:60:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:81,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_tree.h:348:7: note: candidate: std::_Rb_tree_const_iterator<_Tp>::_Rb_tree_const_iterator(const iterator&) [with _Tp = long long int; std::_Rb_tree_const_iterator<_Tp>::iterator = std::_Rb_tree_iterator<long long int>]
_Rb_tree_const_iterator(const iterator& __it) _GLIBCXX_NOEXCEPT
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:348:7: note: conversion of argument 1 would be ill-formed:
/usr/include/c++/7/bits/stl_tree.h:345:7: note: candidate: std::_Rb_tree_const_iterator<_Tp>::_Rb_tree_const_iterator(std::_Rb_tree_const_iterator<_Tp>::_Base_ptr) [with _Tp = long long int; std::_Rb_tree_const_iterator<_Tp>::_Base_ptr = const std::_Rb_tree_node_base*]
_Rb_tree_const_iterator(_Base_ptr __x) _GLIBCXX_NOEXCEPT
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:345:7: note: conversion of argument 1 would be ill-formed:
/usr/include/c++/7/bits/stl_tree.h:341:7: note: candidate: std::_Rb_tree_const_iterator<_Tp>::_Rb_tree_const_iterator() [with _Tp = long long int]
_Rb_tree_const_iterator() _GLIBCXX_NOEXCEPT
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:341:7: note: candidate expects 0 arguments, 1 provided
/usr/include/c++/7/bits/stl_tree.h:326:12: note: candidate: constexpr std::_Rb_tree_const_iterator<long long int>::_Rb_tree_const_iterator(const std::_Rb_tree_const_iterator<long long int>&)
struct _Rb_tree_const_iterator
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:326:12: note: conversion of argument 1 would be ill-formed:
/usr/include/c++/7/bits/stl_tree.h:326:12: note: candidate: constexpr std::_Rb_tree_const_iterator<long long int>::_Rb_tree_const_iterator(std::_Rb_tree_const_iterator<long long int>&&)
/usr/include/c++/7/bits/stl_tree.h:326:12: note: conversion of argument 1 would be ill-formed:
In file included from /usr/include/c++/7/set:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:87,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_multiset.h:762:2: note: candidate: template<class _Kt> decltype (std::multiset<_Key, _Compare, _Alloc>::const_iterator{((const std::multiset<_Key, _Compare, _Alloc>*)this)->std::multiset<_Key, _Compare, _Alloc>::_M_t._M_find_tr(__x)}) std::multiset<_Key, _Compare, _Alloc>::find(const _Kt&) const [with _Kt = _Kt; _Key = long long int; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>]
find(const _Kt& __x) const
^~~~
/usr/include/c++/7/bits/stl_multiset.h:762:2: note: template argument deduction/substitution failed:
/usr/include/c++/7/bits/stl_multiset.h: In substitution of 'template<class _Kt> decltype (std::multiset<long long int>::const_iterator{((const std::multiset<long long int>*)this)->std::multiset<long long int>::_M_t.std::_Rb_tree<long long int, long long int, std::_Identity<long long int>, std::less<long long int>, std::allocator<long long int> >::_M_find_tr(__x)}) std::multiset<long long int>::find<_Kt>(const _Kt&) const [with _Kt = std::_Rb_tree_const_iterator<long long int>]':
santa.cpp:121:62: required from here
/usr/include/c++/7/bits/stl_multiset.h:762:2: error: no matching function for call to 'std::_Rb_tree<long long int, long long int, std::_Identity<long long int>, std::less<long long int>, std::allocator<long long int> >::_M_find_tr(const std::_Rb_tree_const_iterator<long long int>&) const'
In file included from /usr/include/c++/7/map:60:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:81,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_tree.h:1212:2: note: candidate: template<class _Kt, class _Req> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_find_tr(const _Kt&) [with _Kt = _Kt; _Req = _Req; _Key = long long int; _Val = long long int; _KeyOfValue = std::_Identity<long long int>; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>]
_M_find_tr(const _Kt& __k)
^~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:1212:2: note: template argument deduction/substitution failed:
/usr/include/c++/7/bits/stl_tree.h:1209:9: error: no type named 'type' in 'struct std::__has_is_transparent<std::less<long long int>, std::_Rb_tree_const_iterator<long long int>, void>'
typename _Req =
^~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:1222:2: note: candidate: template<class _Kt, class _Req> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_find_tr(const _Kt&) const [with _Kt = _Kt; _Req = _Req; _Key = long long int; _Val = long long int; _KeyOfValue = std::_Identity<long long int>; _Compare = std::less<long long int>; _Alloc = std::allocator<long long int>]
_M_find_tr(const _Kt& __k) const
^~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:1222:2: note: template argument deduction/substitution failed:
/usr/include/c++/7/bits/stl_tree.h:1219:9: error: no type named 'type' in 'struct std::__has_is_transparent<std::less<long long int>, std::_Rb_tree_const_iterator<long long int>, void>'
typename _Req =
^~~~~~~~
In file included from /usr/include/c++/7/set:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:87,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_multiset.h:762:2: error: no matching function for call to 'std::_Rb_tree_const_iterator<long long int>::_Rb_tree_const_iterator(<brace-enclosed initializer list>)'
find(const _Kt& __x) const
^~~~
In file included from /usr/include/c++/7/map:60:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:81,
from santa.cpp:3:
/usr/include/c++/7/bits/stl_tree.h:348:7: note: candidate: std::_Rb_tree_const_iterator<_Tp>::_Rb_tree_const_iterator(const iterator&) [with _Tp = long long int; std::_Rb_tree_const_iterator<_Tp>::iterator = std::_Rb_tree_iterator<long long int>]
_Rb_tree_const_iterator(const iterator& __it) _GLIBCXX_NOEXCEPT
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:348:7: note: conversion of argument 1 would be ill-formed:
/usr/include/c++/7/bits/stl_tree.h:345:7: note: candidate: std::_Rb_tree_const_iterator<_Tp>::_Rb_tree_const_iterator(std::_Rb_tree_const_iterator<_Tp>::_Base_ptr) [with _Tp = long long int; std::_Rb_tree_const_iterator<_Tp>::_Base_ptr = const std::_Rb_tree_node_base*]
_Rb_tree_const_iterator(_Base_ptr __x) _GLIBCXX_NOEXCEPT
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:345:7: note: conversion of argument 1 would be ill-formed:
/usr/include/c++/7/bits/stl_tree.h:341:7: note: candidate: std::_Rb_tree_const_iterator<_Tp>::_Rb_tree_const_iterator() [with _Tp = long long int]
_Rb_tree_const_iterator() _GLIBCXX_NOEXCEPT
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:341:7: note: candidate expects 0 arguments, 1 provided
/usr/include/c++/7/bits/stl_tree.h:326:12: note: candidate: constexpr std::_Rb_tree_const_iterator<long long int>::_Rb_tree_const_iterator(const std::_Rb_tree_const_iterator<long long int>&)
struct _Rb_tree_const_iterator
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_tree.h:326:12: note: conversion of argument 1 would be ill-formed:
/usr/include/c++/7/bits/stl_tree.h:326:12: note: candidate: constexpr std::_Rb_tree_const_iterator<long long int>::_Rb_tree_const_iterator(std::_Rb_tree_const_iterator<long long int>&&)
/usr/include/c++/7/bits/stl_tree.h:326:12: note: conversion of argument 1 would be ill-formed: