問題描述
如果乙個自然數n的k進製表示中任意的相鄰的兩位都不是相鄰的數字,那麼我們就說這個數是k好數。求l位k進製數中k好數的數目。例如k = 4,l = 2的時候,所有k好數為11、13、20、22、30、31、33 共7個。由於這個數目很大,請你輸出它對1000000007取模後的值。
輸入格式
輸入包含兩個正整數,k和l。
輸出格式
輸出乙個整數,表示答案對1000000007取模後的值。
樣例輸入
4 2樣例輸出
資料規模與約定
對於30%的資料,kl <= 106;
對於50%的資料,k <= 16, l <= 10;
對於100%的資料,1 <= k,l <= 100。
腦子抽了,放著簡單暴力的迴圈不用去寫數字dp(超過10進製用不了)。。。
#include using namespace std;
#define max 5005
#define mod 1000000007
typedef long long ll;
ll dp[105][105];//dp[i][j]記錄長度為i,當前位為j的好數個數
int a[105];
int k,l;
/**ll dfs(int pos,int pre,bool limit)
if(!limit)dp[pos]=ans%mod;
return ans;
}ll solve(ll x)
//cout
}**/
int main()}}
for(i=1;icout<}
return 0;
}
藍橋杯 K好數 DP
問題描述 如果乙個自然數n的k進製表示中任意的相鄰的兩位都不是相鄰的數字,那麼我們就說這個數是k好數。求l位k進製數中k好數的數目。例如k 4,l 2的時候,所有k好數為11 13 20 22 30 31 33 共7個。由於這個數目很大,請你輸出它對1000000007取模後的值。輸入格式 輸入包含...
藍橋杯 k好數dp
演算法訓練 k好數 時間限制 1.0s 記憶體限制 256.0mb 問題描述 如果乙個自然數n的k進製表示中任意的相鄰的兩位都不是相鄰的數字,那麼我們就說這個數是k好數。求l位k進製數中k好數的數目。例如k 4,l 2的時候,所有k好數為11 13 20 22 30 31 33 共7個。由於這個數目...
演算法訓練 K好數(dp)
時間限制 1.0s 記憶體限制 256.0mb 提交此題 錦囊1 錦囊2 問題描述 如果乙個自然數n的k進製表示中任意的相鄰的兩位都不是相鄰的數字,那麼我們就說這個數是k好數。求l位k進製數中k好數的數目。例如k 4,l 2的時候,所有k好數為11 13 20 22 30 31 33 共7個。由於這...