HDU 3949 XOR(線性基板子)

2021-09-25 22:00:23 字數 1021 閱讀 4555

題目大意

給定n

nn個數以及q個詢問,每個詢問要求輸出這n

nn個數的所有非空子集的異或值中第k

kk小的值,若不存在該值輸出-1。

思路

裸的線性基,順便放個板子。

維護線性基時一定要從低位往高位維護。

ac**

#include

#include

#include

#include

#include

#include

#include

#include

using namespace std;

typedef

long

long ll;

ll n,q,qu,t,a[

100000

],case=0;

typedef

struct l_b

} this->flag=1;

return;}

ll kth

(ll k)

//取第k大

void

clear()

void

rebuild()

//重構

}for

(int i=

0;i<=num;i++

)return;}

ll get_max

(ll now)

//取最大值

return ret;

} ll get_min()

//取最小值

return0;

}void

merge

(l_b n2)

//合併線性基

#undef num

} l_b;

l_b b;

intmain()

}return0;

}

線性代數 hdu 3949 XOR

題意 給你n個數,要你從中取出若干個進行異或運算,求最後所有可以得到的異或結果中的 第k小的異或值。n 10 18 這個題是用來研究xor性質的一道好題。首先我們可以暴力地找出些規律,我們發現不管拿出多少個數,他們能xor到的數,出現的次數都是一樣的,並且都是2的倍數。事實上,我們不論用原數ai還是...

線性基 HDU3949 XOR 題解

給出 n n 個數,求選出的非空集合中異或和第 k role presentation k k小的異或和 異或和相同算一次 沒有 k k 個輸出 1 role presentation 1 1。如果構造線性基時將矩陣消成對角矩陣,得到的線性基就有乙個很棒的性質 最高位為 i i 的數至多只有乙個,且...

HDU 3949 XOR 線性基 高斯消元

hdu 3949 xor hdu3949xor 搞死消元找到一組線性無關組 消出對角矩陣後 對於k二進位制拆分 對於每列只有有乙個1的,顯然可以用k的二進位制數直接異或得到第k大 對於一列由多個1的,由於二進位制性質,由於2的冪 1次方比2的 1到冪 的和要大,所以不影響大小 include inc...