tri.cpp:12:1: error: 'line' does not name a type
12 | line alns[maxn];
| ^~~~
tri.cpp: In member function 'bool cht::bye(std::pair<long double, long long int>, line)':
tri.cpp:39:19: error: 'alns' was not declared in this scope
39 | if(interx(alns[g.second], h) <= cut) {
| ^~~~
tri.cpp: In member function 'void cht::solve()':
tri.cpp:47:25: error: 'alns' was not declared in this scope
47 | line curr = alns[emb[_c]];
| ^~~~
tri.cpp: In member function 'bool cht::query(long double, long double)':
tri.cpp:77:20: error: 'alns' was not declared in this scope
77 | line now = alns[lb->second];
| ^~~~
tri.cpp: In function 'int main()':
tri.cpp:185:15: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<rational, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
185 | while(ptr < mps.size()) {
| ~~~~^~~~~~~~~~~~
tri.cpp:188:19: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<rational, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
188 | while(ptr < mps.size() and mps[ptr].x == cur) {
| ~~~~^~~~~~~~~~~~
tri.cpp:211:9: error: 'alns' was not declared in this scope; did you mean 'ans'?
211 | alns[i] = line(-xp, yp);
| ^~~~
| ans
In file included from /usr/include/c++/10/bits/stl_algobase.h:71,
from /usr/include/c++/10/bits/char_traits.h:39,
from /usr/include/c++/10/ios:40,
from /usr/include/c++/10/istream:38,
from /usr/include/c++/10/sstream:38,
from /usr/include/c++/10/complex:45,
from /usr/include/c++/10/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
from tri.cpp:1:
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Val_comp_iter<_Compare>::operator()(_Value&, _Iterator) [with _Value = const long double; _Iterator = __gnu_cxx::__normal_iterator<std::pair<long double, long long int>*, std::vector<std::pair<long double, long long int> > >; _Compare = cht::query(long double, long double)::<lambda(long double, std::pair<long double, line>)>]':
/usr/include/c++/10/bits/stl_algo.h:2061:14: required from '_ForwardIterator std::__upper_bound(_ForwardIterator, _ForwardIterator, const _Tp&, _Compare) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<long double, long long int>*, std::vector<std::pair<long double, long long int> > >; _Tp = long double; _Compare = __gnu_cxx::__ops::_Val_comp_iter<cht::query(long double, long double)::<lambda(long double, std::pair<long double, line>)> >]'
/usr/include/c++/10/bits/stl_algo.h:2128:32: required from '_FIter std::upper_bound(_FIter, _FIter, const _Tp&, _Compare) [with _FIter = __gnu_cxx::__normal_iterator<std::pair<long double, long long int>*, std::vector<std::pair<long double, long long int> > >; _Tp = long double; _Compare = cht::query(long double, long double)::<lambda(long double, std::pair<long double, line>)>]'
tri.cpp:73:9: required from here
/usr/include/c++/10/bits/predefined_ops.h:238:23: error: no match for call to '(cht::query(long double, long double)::<lambda(long double, std::pair<long double, line>)>) (const long double&, std::pair<long double, long long int>&)'
238 | { return bool(_M_comp(__val, *__it)); }
| ~~~~~~~^~~~~~~~~~~~~~
/usr/include/c++/10/bits/predefined_ops.h:238:23: note: candidate: 'bool (*)(long double, std::pair<long double, line>)' (conversion)
/usr/include/c++/10/bits/predefined_ops.h:238:23: note: candidate expects 3 arguments, 3 provided
tri.cpp:70:13: note: candidate: 'cht::query(long double, long double)::<lambda(long double, std::pair<long double, line>)>'
70 | [](ld q, pair<ld, line> a) {
| ^
tri.cpp:70:13: note: no known conversion for argument 2 from 'pair<[...],long long int>' to 'pair<[...],line>'
In file included from /usr/include/c++/10/bits/stl_algobase.h:71,
from /usr/include/c++/10/bits/char_traits.h:39,
from /usr/include/c++/10/ios:40,
from /usr/include/c++/10/istream:38,
from /usr/include/c++/10/sstream:38,
from /usr/include/c++/10/complex:45,
from /usr/include/c++/10/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
from tri.cpp:1:
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'constexpr bool __gnu_cxx::__ops::_Iter_comp_iter<_Compare>::operator()(_Iterator1, _Iterator2) [with _Iterator1 = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Iterator2 = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = cht::solve()::<lambda(line, line)>]':
/usr/include/c++/10/bits/stl_algo.h:82:17: required from 'void std::__move_median_to_first(_Iterator, _Iterator, _Iterator, _Iterator, _Compare) [with _Iterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1924:34: required from '_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1958:38: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1974:25: required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:4892:18: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = cht::solve()::<lambda(line, line)>]'
tri.cpp:45:113: required from here
/usr/include/c++/10/bits/predefined_ops.h:156:30: error: no match for call to '(cht::solve()::<lambda(line, line)>) (long long int&, long long int&)'
156 | { return bool(_M_comp(*__it1, *__it2)); }
| ~~~~~~~^~~~~~~~~~~~~~~~
/usr/include/c++/10/bits/predefined_ops.h:156:30: note: candidate: 'bool (*)(line, line)' (conversion)
/usr/include/c++/10/bits/predefined_ops.h:156:30: note: candidate expects 3 arguments, 3 provided
tri.cpp:45:36: note: candidate: 'cht::solve()::<lambda(line, line)>'
45 | sort(begin(emb), end(emb), [](line a, line b) {if(a.m == b.m) return a.c > b.c; else return a.m > b.m; }); //BUG: Did not account for equal gradients
| ^
tri.cpp:45:36: note: no known conversion for argument 1 from 'long long int' to 'line'
In file included from /usr/include/c++/10/bits/stl_algobase.h:71,
from /usr/include/c++/10/bits/char_traits.h:39,
from /usr/include/c++/10/ios:40,
from /usr/include/c++/10/istream:38,
from /usr/include/c++/10/sstream:38,
from /usr/include/c++/10/complex:45,
from /usr/include/c++/10/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
from tri.cpp:1:
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Val_comp_iter<_Compare>::operator()(_Value&, _Iterator) [with _Value = long long int; _Iterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = cht::solve()::<lambda(line, line)>]':
/usr/include/c++/10/bits/stl_algo.h:1826:20: required from 'void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Val_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1854:36: required from 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1886:25: required from 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1977:31: required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:4892:18: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = cht::solve()::<lambda(line, line)>]'
tri.cpp:45:113: required from here
/usr/include/c++/10/bits/predefined_ops.h:238:23: error: no match for call to '(cht::solve()::<lambda(line, line)>) (long long int&, long long int&)'
238 | { return bool(_M_comp(__val, *__it)); }
| ~~~~~~~^~~~~~~~~~~~~~
/usr/include/c++/10/bits/predefined_ops.h:238:23: note: candidate: 'bool (*)(line, line)' (conversion)
/usr/include/c++/10/bits/predefined_ops.h:238:23: note: candidate expects 3 arguments, 3 provided
tri.cpp:45:36: note: candidate: 'cht::solve()::<lambda(line, line)>'
45 | sort(begin(emb), end(emb), [](line a, line b) {if(a.m == b.m) return a.c > b.c; else return a.m > b.m; }); //BUG: Did not account for equal gradients
| ^
tri.cpp:45:36: note: no known conversion for argument 1 from 'long long int' to 'line'
In file included from /usr/include/c++/10/bits/stl_algobase.h:71,
from /usr/include/c++/10/bits/char_traits.h:39,
from /usr/include/c++/10/ios:40,
from /usr/include/c++/10/istream:38,
from /usr/include/c++/10/sstream:38,
from /usr/include/c++/10/complex:45,
from /usr/include/c++/10/ccomplex:39,
from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
from tri.cpp:1:
/usr/include/c++/10/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_comp_val<_Compare>::operator()(_Iterator, _Value&) [with _Iterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Value = long long int; _Compare = cht::solve()::<lambda(line, line)>]':
/usr/include/c++/10/bits/stl_heap.h:139:48: required from 'void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Distance = long int; _Tp = long long int; _Compare = __gnu_cxx::__ops::_Iter_comp_val<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_heap.h:246:23: required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Distance = long int; _Tp = long long int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_heap.h:355:22: required from 'void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1666:23: required from 'void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1937:25: required from 'void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1953:27: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:1974:25: required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<cht::solve()::<lambda(line, line)> >]'
/usr/include/c++/10/bits/stl_algo.h:4892:18: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >; _Compare = cht::solve()::<lambda(line, line)>]'
tri.cpp:45:113: required from here
/usr/include/c++/10/bits/predefined_ops.h:194:23: error: no match for call to '(cht::solve()::<lambda(line, line)>) (long long int&, long long int&)'
194 | { return bool(_M_comp(*__it, __val)); }
| ~~~~~~~^~~~~~~~~~~~~~
/usr/include/c++/10/bits/predefined_ops.h:194:23: note: candidate: 'bool (*)(line, line)' (conversion)
/usr/include/c++/10/bits/predefined_ops.h:194:23: note: candidate expects 3 arguments, 3 provided
tri.cpp:45:36: note: candidate: 'cht::solve()::<lambda(line, line)>'
45 | sort(begin(emb), end(emb), [](line a, line b) {if(a.m == b.m) return a.c > b.c; else return a.m > b.m; }); //BUG: Did not account for equal gradients
| ^
tri.cpp:45:36: note: no known conversion for argument 1 from 'long long int' to 'line'