1 1 統計數字問題

2021-09-27 13:16:12 字數 762 閱讀 1016

【題解】

000..0~999..9 (n個9)

則0~9中每個數字出現的次數都是n*10^(n-1),即每個數字出現次數相同。

但是因為不含前導0.

所以要把多算的0給去掉。

具體的,設n這個數字的長度為l,則需要減去1111....1(l個1)個多餘的0. 然後做個數字dp就好。

詳見:

【**】

#include

#include

#include

using

namespace std;

string s;

int _pow =1;

int cnt[10]

;int

get_num

(int l,

int r)

temp++

;return temp;

}int

main()

cnt[si]+=

get_num

(i+1

,len-1)

; _pow=_pow/10;

}int more0 =0;

for(

int i=

1;i <= len;i++

) cnt[0]

-=more0;

for(

int i =

0;i <=

9;i++

)return0;

}

1 1統計數字問題(詳解)

題目描述 從1頁到n頁,統計0到9出現的次數 include include includeusing namespace std int main int n cin n for int i 1 i n i for int i 0 i 9 i 這個公式可以這麼理解 當n 21時,要減去的0有 10...

統計數字問題

在王曉東編著的 演算法設計與實驗題解 中看到的這個問題,問題描述如下 一本書的頁碼從自然數1開始順序編碼直到自然數n。書的頁碼按照通常的習慣編排,每個頁碼都不含多餘的前導數字0。例如第6頁用6表示而不是06或006。數字統計問題要求對給定書的總頁碼,計算出書的全部頁碼中分別用到多少次數字0,1,2,...

統計數字問題

問題描述如下 一本書的頁碼從自然數1開始順序編碼直到自然數n。書的頁碼按照通常的習慣編排,每個頁碼都不含多餘的前導數字0。例如第6頁用6表示而不是06或006。數字統計問題要求對給定書的總頁碼,計算出書的全部頁碼中分別用到多少次數字0,1,2,3,9。演算法設計與分析習題 分析 考察由0,1,2.9...