/in/foo.cc: In function 'void dfs(int, int)':
/in/foo.cc:27:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(register int i = 0; i < G[u].size(); ++i){
~~^~~~~~~~~~~~~
/in/foo.cc: In function 'void color(int, int)':
/in/foo.cc:52:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(register int i = 0; i < G[u].size(); ++i){
~~^~~~~~~~~~~~~
/in/foo.cc: In function 'bool check(int)':
/in/foo.cc:75:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(register int i = 0; i < G[1].size(); ++i){
~~^~~~~~~~~~~~~
/in/foo.cc: In function 'int main()':
/in/foo.cc:109:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if(m < G[1].size()){
~~^~~~~~~~~~~~~
/in/foo.cc:116:21: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
int mid = l + r >> 1;
~~^~~
/in/foo.cc:120:24: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
printf("%d\n", ans);
^