01字典树应用-最大异或

1.给一个序列,求选出两个数使得异或值最大.

参考我的:https://blog.csdn.net/qq_35577488/article/details/109075516

枚举每个数,在字典树上从高位到低位贪心走相反的位即可.

2.给一个序列,求选出两个数使得异或值最小.

个人思路:枚举每个数.先将该数从Tire树上删去,然后再贪心走相同的.然后在将该数插入到Tire树中.

3.给一个序列,求选出一个区间使得区间异或值最大

由于异或的可差分性.先求每个前缀的异或和.然后问题转化为1.

4.给你一棵树,问你这棵树上的最大异或路径值是多少

由于异或的可差分性.先求每个点到根 的异或和. 然后问题转化1.

猜你喜欢

转载自blog.csdn.net/qq_35577488/article/details/109076080