01串 動態規劃初級

2021-08-07 12:10:59 字數 688 閱讀 7888

描述

acm的zyc在研究01串,他知道某一01串的長度,但他想知道不含有「11」子串的這種長度的01串共有多少個,他希望你能幫幫他。

注:01串的長度為2時,有3種:00,01,10。

輸入

第一行有乙個整數n(0

輸出輸出不含有「11」子串的這種長度的01串共有多少個,佔一行。

樣例輸入

2

23

樣例輸出

3

5

分析:長度為n的不含『11』的『01』子串的由來:

由長度為n-1的01子串加上0或者1組成長度為n的01子串

1.加上0的情況:  n-1位是什麼都不會出現11子串 , 即dp[n-1]

2.加上1的情況: n-1位不能是1,只能是0,所以,所有的情況由長度為n-2的情況決定

即dp[n-2]

綜合上面兩種情況,dp[n] = dp[n-1]+dp[n-2]

#include #include #include #include #include #include #include #include #include #include using namespace std;  

int main()

return 0;

}

01串 動態規劃

時間限制 1000 ms 記憶體限制 65535 kb難度 2 描述 acm的zyc在研究01串,他知道某一01串的長度,但他想知道不含有 11 子串的這種長度的01串共有多少個,他希望你能幫幫他。注 01串的長度為2時,有3種 00,01,10。輸入 第一行有乙個整數n 0 輸出輸出不含有 11 ...

動態規劃 交錯01串

如果乙個01串任意兩個相鄰位置的字元都是不一樣的,我們就叫這個01串為交錯01串。例如 1 10101 0101010 都是交錯01串。小易現在有乙個01串s,小易想找出乙個最長的連續子串,並且這個子串是乙個交錯01串。小易需要你幫幫忙求出最長的這樣的子串的長度是多少。輸入描述 輸入包括字串s,s的...

又是01串(動態規劃)

給定乙個0 1串s,長度為n,下標從0開始,求乙個位置k,滿足0 k n,並且子串s0.k 1中的0的個數與子串sk.n 1中1的個數相等。注意 1 如果k 0,s0.k 1視為空串 2 如果k n,sk.n 1視為空串 3 如果存在多個k值,輸出任何乙個都可以 4 如果不存在這樣的k值,請輸出 1...