Jzoj3518 進化序列

2022-05-09 17:52:22 字數 677 閱讀 5259

abathur採集了一系列primal zerg 的基因樣本,這些基因構成了乙個完整的進化鏈。為了方便,我們用a0,a1...an-1 這n 個正整數描述它們。

乙個基因ax 可以進化為序列中在它之後的基因ay。這個進化的複雜度,等於ax | ax+1...| ay的值,其中| 是二進位制或運算。

abathur 認為複雜度小於m 的進化的被認為是溫和的。它希望計算出溫和的進化的對數

這個題,因為或是遞增的,所以可以用二分+資料結構

本來是可以用st表的,我無聊寫了個rmq樹狀陣列

#includeunsigned s[100010],w[100010];

int n,m; long long ans=0;

inline int lb(int x)

inline int query(int l,int r)

return ans;

}int main(){

freopen("evolve.in","r",stdin);

freopen("evolve.out","w",stdout);

scanf("%d%d",&n,&m);

for(int i=1;i<=n;++i){

scanf("%d",s+i); w[i]=s[i];

for(int j=1;j>1;

if(query(i,m)

JZOJ 4 1 B組 無限序列

description 我們按以下方式產生序列 1 開始時序列是 1 2 每一次變化把序列中的 1 變成 10 0 變成 1 經過無限次變化,我們得到序列 1011010110110101101 總共有 q 個詢問,每次詢問為 在區間a和b之間有多少個1。任務 寫乙個程式回答q個詢問 input 第...

JZOJ 5272 神奇的重複序列

列舉兩字串的開頭,暴力往後掃大家應該會做吧,設兩字串開頭為x,y x 設k y x 我們發現,如果對於多個位置,如果它在所在串的相對位置 k是相同的,那麼這幾個位都必須相同,比如 兩串的開頭為1 3,k 2,那麼,1 3 5 7等都必須相等,換句話說,就是在兩串相交時,會有一定的週期性,大家寫兩個資...

Jzoj5431 序列操作

一開始有n個非負整數h i 1 i n 接下來會進行m次操作,第i次操作給出乙個數c i 要求你選出c i 個大於零的數並將它們減去1。問最多可以進行多少輪操作後無法操作 即沒有c i 個大於零的數 考場上腦抽認為先減小的會更優 很明顯先減大的會更優啊!考慮怎麼維護,可以用splay 然而正常人都用...