walk.cpp: In function 'll min_distance(std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>, int, int)':
walk.cpp:140:71: error: no matching function for call to 'std::set<std::pair<std::pair<long long int, int>, int> >::erase(<brace-enclosed initializer list>)'
140 | if (dst[itr[0]] != -1) str.erase({dst[itr[0]], itr[0]});
| ^
In file included from /usr/include/c++/9/set:61,
from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:87,
from walk.cpp:2:
/usr/include/c++/9/bits/stl_set.h:654:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::erase(std::set<_Key, _Compare, _Alloc>::const_iterator) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >]'
654 | erase(const_iterator __position)
| ^~~~~
/usr/include/c++/9/bits/stl_set.h:654:28: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::set<std::pair<std::pair<long long int, int>, int> >::const_iterator' {aka 'std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >'}
654 | erase(const_iterator __position)
| ~~~~~~~~~~~~~~~^~~~~~~~~~
/usr/include/c++/9/bits/stl_set.h:684:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::size_type std::set<_Key, _Compare, _Alloc>::erase(const key_type&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::size_type = long unsigned int; std::set<_Key, _Compare, _Alloc>::key_type = std::pair<std::pair<long long int, int>, int>]'
684 | erase(const key_type& __x)
| ^~~~~
/usr/include/c++/9/bits/stl_set.h:684:29: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const key_type&' {aka 'const std::pair<std::pair<long long int, int>, int>&'}
684 | erase(const key_type& __x)
| ~~~~~~~~~~~~~~~~^~~
/usr/include/c++/9/bits/stl_set.h:706:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::erase(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::const_iterator) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >]'
706 | erase(const_iterator __first, const_iterator __last)
| ^~~~~
/usr/include/c++/9/bits/stl_set.h:706:7: note: candidate expects 2 arguments, 1 provided
walk.cpp:144:39: error: no matching function for call to 'std::set<std::pair<std::pair<long long int, int>, int> >::insert(<brace-enclosed initializer list>)'
144 | str.insert({s, itr[0]});
| ^
In file included from /usr/include/c++/9/set:61,
from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:87,
from walk.cpp:2:
/usr/include/c++/9/bits/stl_set.h:509:7: note: candidate: 'std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
509 | insert(const value_type& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:509:32: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type&' {aka 'const std::pair<std::pair<long long int, int>, int>&'}
509 | insert(const value_type& __x)
| ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/9/bits/stl_set.h:518:7: note: candidate: 'std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
518 | insert(value_type&& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:518:27: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::set<std::pair<std::pair<long long int, int>, int> >::value_type&&' {aka 'std::pair<std::pair<long long int, int>, int>&&'}
518 | insert(value_type&& __x)
| ~~~~~~~~~~~~~^~~
/usr/include/c++/9/bits/stl_set.h:546:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, const value_type&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
546 | insert(const_iterator __position, const value_type& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:546:7: note: candidate expects 2 arguments, 1 provided
/usr/include/c++/9/bits/stl_set.h:551:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
551 | insert(const_iterator __position, value_type&& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:551:7: note: candidate expects 2 arguments, 1 provided
/usr/include/c++/9/bits/stl_set.h:566:2: note: candidate: 'template<class _InputIterator> void std::set<_Key, _Compare, _Alloc>::insert(_InputIterator, _InputIterator) [with _InputIterator = _InputIterator; _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >]'
566 | insert(_InputIterator __first, _InputIterator __last)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:566:2: note: template argument deduction/substitution failed:
walk.cpp:144:39: note: candidate expects 2 arguments, 1 provided
144 | str.insert({s, itr[0]});
| ^
In file included from /usr/include/c++/9/set:61,
from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:87,
from walk.cpp:2:
/usr/include/c++/9/bits/stl_set.h:578:7: note: candidate: 'void std::set<_Key, _Compare, _Alloc>::insert(std::initializer_list<_Tp>) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >]'
578 | insert(initializer_list<value_type> __l)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:578:43: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::initializer_list<std::pair<std::pair<long long int, int>, int> >'
578 | insert(initializer_list<value_type> __l)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
walk.cpp:152:73: error: no matching function for call to 'std::set<std::pair<std::pair<long long int, int>, int> >::erase(<brace-enclosed initializer list>)'
152 | if (dstr[itr[0]] != -1) str.erase({dstr[itr[0]], itr[0]});
| ^
In file included from /usr/include/c++/9/set:61,
from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:87,
from walk.cpp:2:
/usr/include/c++/9/bits/stl_set.h:654:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::erase(std::set<_Key, _Compare, _Alloc>::const_iterator) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >]'
654 | erase(const_iterator __position)
| ^~~~~
/usr/include/c++/9/bits/stl_set.h:654:28: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::set<std::pair<std::pair<long long int, int>, int> >::const_iterator' {aka 'std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >'}
654 | erase(const_iterator __position)
| ~~~~~~~~~~~~~~~^~~~~~~~~~
/usr/include/c++/9/bits/stl_set.h:684:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::size_type std::set<_Key, _Compare, _Alloc>::erase(const key_type&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::size_type = long unsigned int; std::set<_Key, _Compare, _Alloc>::key_type = std::pair<std::pair<long long int, int>, int>]'
684 | erase(const key_type& __x)
| ^~~~~
/usr/include/c++/9/bits/stl_set.h:684:29: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const key_type&' {aka 'const std::pair<std::pair<long long int, int>, int>&'}
684 | erase(const key_type& __x)
| ~~~~~~~~~~~~~~~~^~~
/usr/include/c++/9/bits/stl_set.h:706:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::erase(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::const_iterator) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >]'
706 | erase(const_iterator __first, const_iterator __last)
| ^~~~~
/usr/include/c++/9/bits/stl_set.h:706:7: note: candidate expects 2 arguments, 1 provided
walk.cpp:156:39: error: no matching function for call to 'std::set<std::pair<std::pair<long long int, int>, int> >::insert(<brace-enclosed initializer list>)'
156 | str.insert({s, itr[0]});
| ^
In file included from /usr/include/c++/9/set:61,
from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:87,
from walk.cpp:2:
/usr/include/c++/9/bits/stl_set.h:509:7: note: candidate: 'std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
509 | insert(const value_type& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:509:32: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const value_type&' {aka 'const std::pair<std::pair<long long int, int>, int>&'}
509 | insert(const value_type& __x)
| ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/9/bits/stl_set.h:518:7: note: candidate: 'std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
518 | insert(value_type&& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:518:27: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::set<std::pair<std::pair<long long int, int>, int> >::value_type&&' {aka 'std::pair<std::pair<long long int, int>, int>&&'}
518 | insert(value_type&& __x)
| ~~~~~~~~~~~~~^~~
/usr/include/c++/9/bits/stl_set.h:546:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, const value_type&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
546 | insert(const_iterator __position, const value_type& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:546:7: note: candidate expects 2 arguments, 1 provided
/usr/include/c++/9/bits/stl_set.h:551:7: note: candidate: 'std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<std::pair<long long int, int>, int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<std::pair<long long int, int>, int>]'
551 | insert(const_iterator __position, value_type&& __x)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:551:7: note: candidate expects 2 arguments, 1 provided
/usr/include/c++/9/bits/stl_set.h:566:2: note: candidate: 'template<class _InputIterator> void std::set<_Key, _Compare, _Alloc>::insert(_InputIterator, _InputIterator) [with _InputIterator = _InputIterator; _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >]'
566 | insert(_InputIterator __first, _InputIterator __last)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:566:2: note: template argument deduction/substitution failed:
walk.cpp:156:39: note: candidate expects 2 arguments, 1 provided
156 | str.insert({s, itr[0]});
| ^
In file included from /usr/include/c++/9/set:61,
from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:87,
from walk.cpp:2:
/usr/include/c++/9/bits/stl_set.h:578:7: note: candidate: 'void std::set<_Key, _Compare, _Alloc>::insert(std::initializer_list<_Tp>) [with _Key = std::pair<std::pair<long long int, int>, int>; _Compare = std::less<std::pair<std::pair<long long int, int>, int> >; _Alloc = std::allocator<std::pair<std::pair<long long int, int>, int> >]'
578 | insert(initializer_list<value_type> __l)
| ^~~~~~
/usr/include/c++/9/bits/stl_set.h:578:43: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::initializer_list<std::pair<std::pair<long long int, int>, int> >'
578 | insert(initializer_list<value_type> __l)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~