CSUOJ 1216 異或最大值 01Trie

2021-07-06 08:31:42 字數 735 閱讀 1327

time limit: 2 sec  

memory limit: 128 mb

submit: 367  

solved: 118 [

submit][

status][

web board]

給定一些數,求這些數中兩個數的異或值最大的那個值

第一行為數字個數n,1 <= n <= 10 ^ 5。接下來n行每行乙個32位有符號非負整數。

任意兩數最大異或值

337

9

14

題目分析:把每個數的二進位制表示插入一顆trie,插得時候從高位開始,這個想想就知道,然後搜的時候直接貪心,複雜度o(n)

#include #include #include #define ll long long

using namespace std;

int const max = 4e6;

int n;

struct trie

inline void init()

inline void insert(ll x)

end[p] = x;

} inline int search(int x)

return x ^ end[p];

}}tr;

int main()

printf("%d\n", ma);

}}

CSU 1216(異或最大值)

csu 1216 題目簡述 經典題目,求乙個陣列中兩個數異或運算的最大值。題目極其簡單,但是要求的複雜度需要達到o n log n 還是比較難的。解題思路 總的思路就是構建一棵0 1字典樹,然後乙個數讓查詢乙個與其異或結果最大的數的效率達到o log n 這裡因為異或的特殊性質,可以使用貪心法則來實...

csu 1216 異或最大值

time limit 2 sec memory limit 128 mb submitted 836 solved 300 給定一些數,求這些數中兩個數的異或值最大的那個值 多組資料。第一行為數字個數n,1 n 10 5。接下來n行每行乙個32位有符號非負整數。任意兩數最大異或值 337 9 14 ...

CSU 1216 異或最大值

題目簡述 經典題目,求乙個陣列中兩個數異或運算的最大值。題目極其簡單,但是要求的複雜度需要達到o n log n 還是比較難的。解題思路 總的思路就是構建一棵0 1字典樹,然後乙個數讓查詢乙個與其異或結果最大的數的效率達到o log n 這裡因為異或的特殊性質,可以使用貪心法則來實現。1 0 1字典...