A ideia geral é que cada ponto da árvore tem um peso, e você precisa manter três operações:
1 x: dar todos os pontos com uma distância x de 1 + 1
2 xy: x valor do ponto -y
3 x: consultar toda a distância x pontos = A soma XOR de todos os valores de 1 é
uma questão bem clássica, usando duas rotinas bem clássicas:
1. Estabelecer 01Trie de baixo para cima para manter a operação +1 de cada ponto e a soma XOR de todos os pontos
2 . Respectivamente Manter Filho e Pai Separadamente
Jogue um código mais claro aqui, está ficando tarde, espere até a próxima vez que pensar nisso e continue escrevendo.
https://www.luogu.com.cn/paste/s3le33am