citymapping.cpp: In function 'void dfs(int, int)':
citymapping.cpp:21:74: warning: narrowing conversion of 'x' from 'std::tuple_element<0, std::pair<long long int, long long int> >::type' {aka 'long long int'} to 'int' [-Wnarrowing]
21 | if(!f||dis[f][s]+dis[s][x]==dis[f][x])dfs(x,s),edge.push_back({s,x,w});
| ^
citymapping.cpp:21:76: warning: narrowing conversion of 'w' from 'std::tuple_element<1, std::pair<long long int, long long int> >::type' {aka 'long long int'} to 'int' [-Wnarrowing]
21 | if(!f||dis[f][s]+dis[s][x]==dis[f][x])dfs(x,s),edge.push_back({s,x,w});
| ^
citymapping.cpp: In function 'void find_roads(int, int, int*, int*, int*)':
citymapping.cpp:35:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<A>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
35 | for(i=0;i<edge.size();i++){
| ~^~~~~~~~~~~~
citymapping.cpp:48:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
48 | for(i=0;i<v.size();i++){
| ~^~~~~~~~~