Main.cc: In member function ‘void Segtree::merge(Segtree::Node&, const Segtree::Node&, const Segtree::Node&)’: Main.cc:71:71: error: no matching function for call to ‘max()’ node.ans = max({ left.ans, right.ans, left.rsum + right.lsum }); ^ 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/ostream:38, from /usr/include/c++/7/iostream:39, from Main.cc:1: /usr/include/c++/7/bits/stl_algobase.h:219:5: note: candidate: template 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: Main.cc:71:71: note: candidate expects 2 arguments, 1 provided node.ans = max({ left.ans, right.ans, left.rsum + right.lsum }); ^ 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/ostream:38, from /usr/include/c++/7/iostream:39, from Main.cc:1: /usr/include/c++/7/bits/stl_algobase.h:265:5: note: candidate: template 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: Main.cc:71:71: note: candidate expects 3 arguments, 1 provided node.ans = max({ left.ans, right.ans, left.rsum + right.lsum }); ^ Main.cc: In function ‘int main()’: Main.cc:100:23: error: missing template arguments before ‘(’ token Segtree arr(vector(n, -k)); ^