/in/foo.cc:1:0: warning: ignoring #pragma comment [-Wunknown-pragmas]
#pragma comment(linker, "/STACK:102400000,102400000")
/in/foo.cc: In function 'void dfs1(int, int)':
/in/foo.cc:15:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < adj[u].size(); ++i) {
~~^~~~~~~~~~~~~~~
/in/foo.cc: In function 'void dfs2(int, int)':
/in/foo.cc:31:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < adj[u].size(); ++i) {
~~^~~~~~~~~~~~~~~
/in/foo.cc: In function 'int get_anc(int, int)':
/in/foo.cc:55:45: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
return depth[x] - depth[top[x]] - k >= down[top[x]].size() ? 0 : down[top[x]][depth[x] - depth[top[x]] - k];
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/in/foo.cc:57:45: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
return k - depth[x] + depth[top[x]] >= up[top[x]].size() ? 0 : up[top[x]][k - depth[x] + depth[top[x]]];
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~