藍橋杯 演算法訓練 K好數 (動態規劃)

2021-08-15 12:31:52 字數 735 閱讀 2499

問題描述

如果乙個自然數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樣例輸出

7資料規模與約定

對於30%的資料,kl

<= 106;

對於50%的資料,k <= 16, l <= 10;

對於100%的資料,1 <= k,l <= 100。

#include #define mod 1000000007

using namespace std;

int main()

, sum = 0;

for (int i = 1; i < k; i++) //k進製中數字不超過k

dp[1][i] = 1; //長度為1 數字為i的數字個數都為1

for (int i = 2; i <= l; i++)

}} }

for (int i = 0; i < k; i++)

cout << sum;

return 0;

}

藍橋杯 演算法訓練 K好數 (動態規劃)

演算法訓練 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好數 動態規劃

資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 如果乙個自然數n的 k進製表示中任意的相鄰的兩位都不是相鄰的數字,那麼我們就說這個數是k好數。求 l位 k進製數中k好數的數目。例如k 4,l 2的時候,所有k好數為11 13 20 22 30 31 33 共7個。由於這個數目很大...

藍橋杯 演算法訓練 K好數(動態規劃)

題目描述 如果乙個自然數n的k進製表示中任意的相鄰的兩位都不是相鄰的數字,那麼我們就說這個數是k好數。求l位k進製數中k好數的數目。例如k 4,l 2的時候,所有k好數為11 13 20 22 30 31 33 共7個。由於這個數目很大,請你輸出它對1000000007取模後的值。輸入輸入包含兩個正...