bool DFS(int x,int color,int r,int l,int fa) { col[x]=color; for(int i=0;i<v[x].size();i++) { int to=v[x][i]; if(to==fa||to>r||to<l)continue; if(col[to]==0) { if(!DFS(to,3-color,r,l,x)) return 0; } if(col[to]==col[x]) { return 0; } } return 1; }
bool DFS(int x,int color,int r,int l,int fa) { col[x]=color; for(int i=0;i<v[x].size();i++) { int to=v[x][i]; if(to==fa||to>r||to<l)continue; if(col[to]==0) { if(!DFS(to,3-color,r,l,x)) return 0; } if(col[to]==col[x]) { return 0; } } return 1; }