ytaaa使用一種特殊的編碼方式來加密英文本串,即a->1,b->2,…,z->26ytaaa很快發現相同密文可解讀為不同的原字串。ytaaa想知道,對於乙個密文,共有多少種解讀方式。如26可以解讀為 bf或z。
輸入包括多組資料,資料僅由數字組成。數字位數最大為1000000,輸入資料保證合法。
輸出每行乙個數,代表有幾種解讀方案。由於數值可能較大,請將結果mod1000000007後輸出。遞推dp;
dp[i] = dp[i-1];
如果第 i 和 i-1 位能湊成1 ~ 26,且i-1,i,i+1位上的數字都不為0,時, dp[i] += dp[i-2];
#include
#include
#define mod 1000000007
#define maxn 1000000
typedef __int64 ll;
char str[maxn];
ll dp[maxn];
bool judge(int i)
int main()
printf("%i64d\n",dp[len-1]);
}return
0;}
暑假選拔賽01 數字問題
大家對進製一定很清楚,如果乙個數字是a進製表示,則它的每一位數字小於a。現在定義一種奇異數字,假設它是a進製,它的每一位與它左邊 右邊的數字都不是相鄰。現在問題是,求解b位a進製的所有整數中奇異數字的個數。比如a 3,b 2,奇異數字就有11 20 22 三個,所以結果是3.輸入兩個正整數a 1 a...
暑假選拔賽02 最大乘積
給出正整數n和m,把n拆成m個非負整數之和,使得這m個數的乘積最大。輸出乘積對1000000007取模的結果。輸入第一行為乙個正整數t,表示有t組測試資料。接下去t行,每行為一組資料。每行兩個正整數n m,含義如上。n在32位signed int範圍內,m 100000,t 100。每組資料一行,輸...
選拔賽總結
時間限制 1 sec 記憶體限制 512 mb 提交 18 解決 9 提交 狀態 討論版 命題人 admin 題目描述 手機端qq推出了貼表情的新功能,復讀機勢力再次猖狂起來,她們把表情貼的到處都是!裙主決定把被復讀次數最多的表情從聊天記錄中刪去。聊天框是乙個大小為n x m的黑白點陣。背景色是白色...