rt,在这个评测记录里面,init() 函数中内容如下:
init()
void init(){ for(int i=1;i<=n;i++){ for(int j=1;j<=18;j++){ anc[i][j]=anc[anc[i][j-1]][j-1]; } } }
可以看出这里是外层循环枚举点,里层循环枚举倍增的祖先,但是这样只能过前两个点,而在这个评测记录中,外层循环和里层循环换了下顺序就能 AC,所以是为什么啊