收穫:對於乙個長度為k的區間是否存在[l,
l+k−
1]
[l,l+k-1]
[l,l+k
−1]的所有數字,可以用區間和和區間異或和來判別。
思路:對於前後殘缺的區間可以預處理出前字尾中不同數字的個數,然後列舉分割點,對於完整的區間用區間和和區間異或和判斷。
ll a[n]
, xor[n]
, sum[n]
;ll n, k, sum, xor;
int cot1[n]
, cot2[n]
;void
x_x(
) mp.
clear()
;ff(i, n,1)
}bool
check
(int idx)
if(cot2[i]
return
false
;return
true;}
intmain()
}puts
("no");
}else
}puts
("no");
} fin:;}
return0;
}
牛客暑假第六場 K bag 差分 思維
題意 給你一段長度為n的序列判斷是否為k bag的子串行,定義k bag為k個數的全排列 思路 這題的思路有很多,有hash map,有dp,也有差分。說一下差分把,首先對與這段序列,有開頭一定在1 min k,n 之間,用乙個陣列維護這段區間,如果這個陣列t i 的字首和等於0,那麼就表示這個位置...
牛客多校第六場 K Bag(暴力,貪心)
題意 原序列是一堆k個數全排列組成的。給你乙個串,求這個子串是否可能是原序列子串 思路 直接暴力啊,維護出dp i dp i dp i 代表i ii i k 1i k 1 i k 1是否是全排列,然後列舉第乙個排列的終止位置。列舉起始排列的複雜度為k kk,check的複雜度為n k n kn k,...
2020牛客暑期多校訓練營 第六場
雖然題目沒有看懂,但是本場mvp浩大師發現了規律,f x 2x 12x f x 1 f x 1 over 2 x f x 1 f x 2 x2x 1 f x 1 然後把程式打出來就ac了。include using namespace std typedef long long ll const i...