dragon2.cpp: In function 'const bool operator<(angle, angle)':
dragon2.cpp:18:12: error: 'orient' was not declared in this scope; did you mean 'rint'?
18 | int ps = orient(p.a, p.b, p.c);
| ^~~~~~
| rint
dragon2.cpp: In function 'int main()':
dragon2.cpp:66:72: error: no matching function for call to 'lower_bound(std::vector<angle>::iterator, std::vector<angle>::iterator, <brace-enclosed initializer list>)'
66 | ia[i] = (int) (lower_bound(all_a.begin(), all_a.end(), {p[i], a, b}) - all_a.begin());
| ^
In file included 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 dragon2.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:1350:5: note: candidate: 'template<class _ForwardIterator, class _Tp> _ForwardIterator std::lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&)'
1350 | lower_bound(_ForwardIterator __first, _ForwardIterator __last,
| ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algobase.h:1350:5: note: template argument deduction/substitution failed:
dragon2.cpp:66:72: note: couldn't deduce template parameter '_Tp'
66 | ia[i] = (int) (lower_bound(all_a.begin(), all_a.end(), {p[i], a, b}) - all_a.begin());
| ^
In file included from /usr/include/c++/10/algorithm:62,
from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
from dragon2.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:2031:5: note: candidate: 'template<class _FIter, class _Tp, class _Compare> _FIter std::lower_bound(_FIter, _FIter, const _Tp&, _Compare)'
2031 | lower_bound(_ForwardIterator __first, _ForwardIterator __last,
| ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algo.h:2031:5: note: template argument deduction/substitution failed:
dragon2.cpp:66:72: note: candidate expects 4 arguments, 3 provided
66 | ia[i] = (int) (lower_bound(all_a.begin(), all_a.end(), {p[i], a, b}) - all_a.begin());
| ^
dragon2.cpp:67:72: error: no matching function for call to 'lower_bound(std::vector<angle>::iterator, std::vector<angle>::iterator, <brace-enclosed initializer list>)'
67 | ib[i] = (int) (lower_bound(all_b.begin(), all_b.end(), {p[i], b, a}) - all_b.begin());
| ^
In file included 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 dragon2.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:1350:5: note: candidate: 'template<class _ForwardIterator, class _Tp> _ForwardIterator std::lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&)'
1350 | lower_bound(_ForwardIterator __first, _ForwardIterator __last,
| ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algobase.h:1350:5: note: template argument deduction/substitution failed:
dragon2.cpp:67:72: note: couldn't deduce template parameter '_Tp'
67 | ib[i] = (int) (lower_bound(all_b.begin(), all_b.end(), {p[i], b, a}) - all_b.begin());
| ^
In file included from /usr/include/c++/10/algorithm:62,
from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
from dragon2.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:2031:5: note: candidate: 'template<class _FIter, class _Tp, class _Compare> _FIter std::lower_bound(_FIter, _FIter, const _Tp&, _Compare)'
2031 | lower_bound(_ForwardIterator __first, _ForwardIterator __last,
| ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algo.h:2031:5: note: template argument deduction/substitution failed:
dragon2.cpp:67:72: note: candidate expects 4 arguments, 3 provided
67 | ib[i] = (int) (lower_bound(all_b.begin(), all_b.end(), {p[i], b, a}) - all_b.begin());
| ^
dragon2.cpp:72:91: error: template argument 1 is invalid
72 | vector<vector<vector<vector<array<int, 3>>>> pref_qs(2, vector<vector<array<int, 3>>>(m));
| ^
dragon2.cpp:72:91: error: template argument 2 is invalid
dragon2.cpp:73:91: error: template argument 1 is invalid
73 | vector<vector<vector<vector<array<int, 3>>>> suff_qs(2, vector<vector<array<int, 3>>>(m));
| ^
dragon2.cpp:73:91: error: template argument 2 is invalid
dragon2.cpp:75:5: error: 'pref_qs' was not declared in this scope
75 | pref_qs[0][i].resize(cnt[i]);
| ^~~~~~~
dragon2.cpp:77:5: error: 'suff_qs' was not declared in this scope
77 | suff_qs[0][i].resize(cnt[i]);
| ^~~~~~~