淦,异或的性质必须要熟悉啊!!!
一个完美的性质:$a\oplus b\oplus b=a$
于是,对于一个路径$d(x,y)$,必然有$d(x,y)=d(x,root)\oplus d(root,y)$,其中$d(x,y)$表示x到y路径的异或和
接着正解就呼之欲出了:
对于每一个节点$u$,我们均可以计算出其到根节点的异或和,而答案就是$\sum_{i!=j}max\{d(i,root)\oplus d(j,root)\}$
我去这么简单
接下来利用trie树即可完成剩余问题。
2024-03-18 18:37:58
淦,异或的性质必须要熟悉啊!!!
一个完美的性质:$a\oplus b\oplus b=a$
于是,对于一个路径$d(x,y)$,必然有$d(x,y)=d(x,root)\oplus d(root,y)$,其中$d(x,y)$表示x到y路径的异或和
接着正解就呼之欲出了:
对于每一个节点$u$,我们均可以计算出其到根节点的异或和,而答案就是$\sum_{i!=j}max\{d(i,root)\oplus d(j,root)\}$
我去这么简单
接下来利用trie树即可完成剩余问题。
下一篇:图论笔记1 匹配