異或最大 0 1trie

2021-09-05 06:54:41 字數 436 閱讀 9565

傳送門

每個整數看著32位的二進位制01串,將n個數從高位到低位依次插入到乙個01trie中。

考慮插入第i個數,相當於在trie中進行依次檢索,根據xor相同為0,不同為1的特點,貪心的每次走與ai當前位相反的指標,

如果沒有相反的節點則走相同的,這樣就可以得到與ai做xor運算的最大aj

#include#define n 100050*30

using namespace std;

int ch[n][2],val[n],n,ans,tot;

void insert(int x) val[now] = x;

}int quary(int x) return val[now];

}int main() printf("%d",ans); return 0;

}

01 Trie 維護異或和

2049.多重集合 初始有乙個空陣列,現有兩種操作 向陣列中插入乙個數字 陣列中的所有數字 1 給出 n 個操作,輸出每次操作後整個陣列的異或和。01字典樹板子題 include include include include include include include include incl...

CSUOJ 1216 異或最大值 01Trie

time limit 2 sec memory limit 128 mb submit 367 solved 118 submit status web board 給定一些數,求這些數中兩個數的異或值最大的那個值 第一行為數字個數n,1 n 10 5。接下來n行每行乙個32位有符號非負整數。任意兩...

最大異或和(可持久化01trie)

題意 轉化後的題意是有一種操作 一種詢問 1.操作 在序列末尾插入乙個數 2.詢問 給定l,r x l,r,x l,r,x,求區間l,r l,rl,r中與x xx異或能得到的最大異或值 化後的題意 思路 題意都被轉化成這樣了。應該就沒啥難度了 用類似主席樹的方式構建可持久化01tr ie 01tri...