如果你用vector s[]存后序遍历
Kosaraju函数里第二次for是
for(n~1)if(!col[s[i]])++cnt,dfs2(s[i]);
而不是
for(n~1)if(!col[i])++cnt,dfs2(i);