pipes.cpp:22:24: error: wrong number of template arguments (1, should be at least 2)
map<pair<short, short> > e;
^
In file included from /usr/include/c++/7/map:61:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:81,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_map.h:99:11: note: provided for 'template<class _Key, class _Tp, class _Compare, class _Alloc> class std::map'
class map
^~~
pipes.cpp: In function 'void build(int, int)':
pipes.cpp:34:63: error: no matching function for call to 'min(int&, short unsigned int&)'
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/bits/char_traits.h:39:0,
from /usr/include/c++/7/ios:40,
from /usr/include/c++/7/istream:38,
from /usr/include/c++/7/sstream:38,
from /usr/include/c++/7/complex:45,
from /usr/include/c++/7/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)
min(const _Tp& __a, const _Tp& __b)
^~~
/usr/include/c++/7/bits/stl_algobase.h:195:5: note: template argument deduction/substitution failed:
pipes.cpp:34:63: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'short unsigned int')
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/bits/char_traits.h:39:0,
from /usr/include/c++/7/ios:40,
from /usr/include/c++/7/istream:38,
from /usr/include/c++/7/sstream:38,
from /usr/include/c++/7/complex:45,
from /usr/include/c++/7/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
min(const _Tp& __a, const _Tp& __b, _Compare __comp)
^~~
/usr/include/c++/7/bits/stl_algobase.h:243:5: note: template argument deduction/substitution failed:
pipes.cpp:34:63: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'short unsigned int')
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/algorithm:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:65,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algo.h:3450:5: note: candidate: template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)
min(initializer_list<_Tp> __l)
^~~
/usr/include/c++/7/bits/stl_algo.h:3450:5: note: template argument deduction/substitution failed:
pipes.cpp:34:63: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/algorithm:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:65,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algo.h:3456:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)
min(initializer_list<_Tp> __l, _Compare __comp)
^~~
/usr/include/c++/7/bits/stl_algo.h:3456:5: note: template argument deduction/substitution failed:
pipes.cpp:34:63: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
pipes.cpp:34:75: error: no matching function for call to 'max(int&, short unsigned int&)'
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/bits/char_traits.h:39:0,
from /usr/include/c++/7/ios:40,
from /usr/include/c++/7/istream:38,
from /usr/include/c++/7/sstream:38,
from /usr/include/c++/7/complex:45,
from /usr/include/c++/7/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algobase.h:219:5: note: candidate: template<class _Tp> constexpr const _Tp& std::max(const _Tp&, const _Tp&)
max(const _Tp& __a, const _Tp& __b)
^~~
/usr/include/c++/7/bits/stl_algobase.h:219:5: note: template argument deduction/substitution failed:
pipes.cpp:34:75: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'short unsigned int')
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/bits/char_traits.h:39:0,
from /usr/include/c++/7/ios:40,
from /usr/include/c++/7/istream:38,
from /usr/include/c++/7/sstream:38,
from /usr/include/c++/7/complex:45,
from /usr/include/c++/7/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algobase.h:265:5: note: candidate: template<class _Tp, class _Compare> constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)
max(const _Tp& __a, const _Tp& __b, _Compare __comp)
^~~
/usr/include/c++/7/bits/stl_algobase.h:265:5: note: template argument deduction/substitution failed:
pipes.cpp:34:75: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'short unsigned int')
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/algorithm:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:65,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algo.h:3462:5: note: candidate: template<class _Tp> constexpr _Tp std::max(std::initializer_list<_Tp>)
max(initializer_list<_Tp> __l)
^~~
/usr/include/c++/7/bits/stl_algo.h:3462:5: note: template argument deduction/substitution failed:
pipes.cpp:34:75: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
In file included from /usr/include/c++/7/algorithm:62:0,
from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:65,
from pipes.cpp:1:
/usr/include/c++/7/bits/stl_algo.h:3468:5: note: candidate: template<class _Tp, class _Compare> constexpr _Tp std::max(std::initializer_list<_Tp>, _Compare)
max(initializer_list<_Tp> __l, _Compare __comp)
^~~
/usr/include/c++/7/bits/stl_algo.h:3468:5: note: template argument deduction/substitution failed:
pipes.cpp:34:75: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
pipes.cpp:34:77: error: invalid types 'int[<brace-enclosed initializer list>]' for array subscript
if(x != prev && !pos[x]) build(x, node), e[{min(node,x),max(node,x)}]--;
^
pipes.cpp: In function 'bool backEdge(int, int)':
pipes.cpp:43:10: error: request for member 'count' in 'e', which is of non-class type 'int'
if(e.count({x, y}) == 0) return 0;
^~~~~
pipes.cpp: In function 'int main()':
pipes.cpp:67:31: error: invalid types 'int[<brace-enclosed initializer list>]' for array subscript
e[{min(x,y), max(x,y)}]++;
^
pipes.cpp:61:20: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
int n, m; scanf("%d%d", &n, &m);
~~~~~^~~~~~~~~~~~~~~~
pipes.cpp:64:35: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
unsigned short x, y; scanf("%hu%hu", &x, &y);
~~~~~^~~~~~~~~~~~~~~~~~