試題 演算法訓練 K好數

2021-10-22 07:24:57 字數 856 閱讀 6399

資源限制

時間限制:1.0s 記憶體限制:256.0mb

問題描述

如果乙個自然數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。

**參考

這題太難了先記錄一下,有空一定寫個詳細解析

#include

using

namespace std;

//動態規劃,由子問題解決大問題

const

int mod =

1000000007

;//注意陣列開太大會超出記憶體限制

int dp[

1000][

1000];

//i表示有幾位數,j表示進製內的乙個數

intsolve

(int k,

int l)}}

}for

(int i=

0; i)return ans;

}int

main()

演算法訓練 K好數

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

演算法訓練 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好數

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