輸出1到n中含有6的數的個數。
100
19找規律感覺好難想(好像是什麼100以內有19個,200以內有19*2個,600以內115個,700以內214個...,1000以內有271,2000以內有2*271個),就直接套數字dp的模板了。
1 #include2 #include3 #include4using
namespace
std;
5int dp[20][3];6
int digit[20];7
8int dfs(int pos,int sta,bool
limit)920
if(!limit) return dp[pos][sta]=ans;
21return
ans;22}
2324
int solve(int
x)25
31return dfs(len,0,true
);32}33
34int
main()
3542
return0;
43 }
鯧數 數字dp
設從低到高第 len 1le n 1 位的數字為 x x,考慮 x x 與後面 len len 位組成逆序對的貢獻,先考慮 x 1x 1 時的貢獻,為 len 10l enle n 10 len,其中每個數字出現的次數都相同,再考慮 x 0,9 x 0 9 貢獻變為 len 10l en x 10 ...
count 數字計數 (數字dp)
給定兩個正整數a和b,求在 a,b 中的所有整數中,每個數碼 digit 各出現了多少次。input 輸入檔案中僅包含一行兩個整數a b,含義如上所述。output 輸出檔案中包含一行10個整數,分別表示0 9在 a,b 中出現了多少次。sample input 1 99 sample output...
D windy數(數字dp模板)
windy定義了一種windy數。不含前導零且相鄰兩個數字之差至少為2的正整數被稱為windy數。windy想知道,在a和b之間,包括a和b,總共有多少個windy數?input 包含兩個整數,a b。output 乙個整數 sample input 輸入樣例一 1 10 輸入樣例二 25 50 s...