給你n個正整數,請你計算出有多少對數的異或值小於等於k。
輸入描寫敘述:
輸入包括多組測試資料。每組測試資料報括兩行,第一行為兩個正整數n(2<=n<=100000),k(k<2^30);第二行包括n個正整數,每乙個數都小於2^30,每兩個數以空格隔開。
輸出描寫敘述:
對於每組測試資料輸出對應的答案。
輸入例子:
5 6
4 3 5 7 9
5 37 9 8 4 3
輸出例子:5
2 題目分析:
因為題目資料僅僅到100000,能夠直接進行暴力求解,僅僅是要注意。該值不能異或自己。並且要去掉反覆的個數。比如a^b與b^a是一種。
ac**:
#includeusing namespace std;
typedef long long ll;
ll a[100001];
int main()
for(int i=0;i}
}cout<}
return 0;
}
正整數異或值問題
給你n個正整數,請你計算出有多少對數的異或值小於等於k。輸入描述 輸入包含多組測試資料,每組測試資料報含兩行,第一行為兩個正整數n 2 n 100000 k k 2 30 第二行包含n個正整數,每個數都小於2 30,每兩個數以空格隔開。輸出描述 對於每組測試資料輸出相應的答案。輸入樣例 5 64 3...
異或值問題III
題目詳情 給你 n 個正整數,要求從中至少選乙個數,使他們的異或值最小。如果只選乙個數,那麼他的異或值就是本身。輸入描述 有多個測試資料,每個測試資料報含兩行,第一行是乙個正整數n 0 n 30 第二行包含 n 個正整數,每個 正整數都小於2 31,以檔案結束。輸出描述 對於每個測試資料,輸出答案。...
異或和之和 異或問題
題目 有n個數,任選3個進行異或,求出所有三元組的異或和的和 普通計算是 o n 3 但是發現,對於異或的運算,就轉換為二進位制的運算,把每乙個陣列轉換為二進位制,再拆分,當且僅當 1 1 1 和 1 0 0 時,答案才為1,否則都是0,也就是說,只有這兩個情況是由貢獻的 把每個數位化為二進位制,然...