/in/foo.cc: In function 'void add_edge(int, int, int)':
/in/foo.cc:19:49: warning: narrowing conversion of 'G[to].std::vector<edge>::size()' from 'std::vector<edge>::size_type {aka long unsigned int}' to 'int' inside { } [-Wnarrowing]
G[from].push_back((edge){to, cap, G[to].size()});
~~~~~~~~~~^~
/in/foo.cc:20:51: warning: narrowing conversion of '(G[from].std::vector<edge>::size() - 1)' from 'std::vector<edge>::size_type {aka long unsigned int}' to 'int' inside { } [-Wnarrowing]
G[to].push_back((edge){from, 0, G[from].size()-1});
~~~~~~~~~~~~~~^~
/in/foo.cc: In function 'void bfs(int)':
/in/foo.cc:32:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i = 0; i < G[v].size(); i++)
~~^~~~~~~~~~~~~
/in/foo.cc: In function 'int dfs(int, int, int)':
/in/foo.cc:47:29: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int &i = iter[u]; i < G[u].size(); i++)
~~^~~~~~~~~~~~~