#include #include #include using namespace std; const int maxn=10000+5; const int INF=1000000000; vector G[maxn],ves; int p[maxn],d[maxn][3]; void dfs(int u,int fa) { ves.push_back(u); p[u]=fa; for(int i=0;i=0;i--) { int u=ves[i]; d[u][0]=1;d[u][1]=0; for(int j=0;jINF) d[u][0]=INF; if(d[u][1]>INF) d[u][1]=INF; } d[u][2]=INF; for(int j=0;j