HDU 5968 異或密碼 字首異或

2022-07-24 03:48:15 字數 694 閱讀 4965

給出乙個長為n的陣列a,給出m個質詢,每個質詢給出乙個數字,需要找到序列a中所有連續子串行的異或結果中與質詢數字差的絕對值最小的乙個,輸出最長的這種連續子串行的長度

異或字首和+暴力

我們知道乙個數異或自己即抵消異或效果

比如a^b^a = b , a^a^b = b

那麼我們存下字首和之後,想要求i~j的異或結果即pre[j]^pre[i-1]

注意: 『^』的優先順序比雙目運算子『-』低

#include 

#include

#include

#include

using

namespace

std;

const

int inf = 0x3f3f3f3f;

const

int maxn = 105;

int a[maxn];

int pre[maxn];

int main()

scanf("%d",&m);

while(m--)

else

if( pp == abs_ )}}

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

}printf("\n");

}return

0;}

HDU5968 異或密碼

資料共 t t le100 組。每組給定乙個長度為 n n le100 的非負整數序列 a a i le1024 m m le100 個詢問,每個詢問包含乙個整數 x i x i le1024 求該序列的子區間異或和與 x i 接近程度值最小的區間長度 若有多個區間的異或和與 x i 的接近程度值相...

子段異或(異或字首和)

傳送門 第一行乙個整數 n 代表數列長度。第二行 n 個整數,代表數列。輸出乙個整數,代表答案。示例1 複製5 1 2 3 2 1 複製 2 子段 1,3 和子段 3,5 是合法子段。首先你得知道乙個知識點就是 如果sum i 為陣列a的前i項的異或和,就是說sum i a 1 a 2 a 3 a ...

異或 異或相關

感謝 morning glory 贊助 異或異 或 de scri ptio ndes crip tion 給定 l,r l,r,求 i lr j lr i ji l r j l r i jl,r 1 09l,r 1 09 s olut ions olut ion 假設l 1,r 4l 1,r 4,...