highway.cpp: In function 'std::pair<int, int> rootedTree(int, std::vector<int>, std::vector<int>, int, int)':
highway.cpp:37:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
37 | while((1 << g) < candidates.size()) g++;
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
highway.cpp:40:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
40 | for(int j = 0; j < candidates.size(); j++) {
| ~~^~~~~~~~~~~~~~~~~~~
highway.cpp:44:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
44 | for(int j = 0; j < candidates.size(); j++) {
| ~~^~~~~~~~~~~~~~~~~~~
highway.cpp: In function 'void find_pair(int, std::vector<int>, std::vector<int>, int, int)':
highway.cpp:53:21: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
53 | if(U.size() + 1 == N) ans = rootedTree(N, U, V, A, B);
| ~~~~~~~~~~~~~^~~~