演算法實現題 1 1 統計數字問題

2021-09-27 07:45:17 字數 695 閱讀 8639

問題描述:

一本書的頁碼從自然數 1 開始順序編碼直到自然數 n。書的頁碼按照通常的習慣編排,

每個頁碼都不含多餘的前導數字 0。例如,第 6 頁用數字 6 表示,而不是 06 或 006 等。數

字計數問題要求對給定書的總頁碼 n,計算出書的全部頁碼中分別用到多少次數字 0,1,

2,…,9。

程式設計任務:

給定表示書的總頁碼的 10 進製整數 n (1≤n≤109

) 。程式設計計算書的全部頁碼中分別用

到多少次數字 0,1,2,…,9。

資料輸入:

輸入資料由檔名為 input.txt 的文字檔案提供。

每個檔案只有 1 行,給出表示書的總頁碼的整數 n。

結果輸出:

程式執行結束時,將計算結果輸出到檔案 output.txt 中。輸出檔案共有 10 行,在第 k 行

輸出頁碼中用到數字 k-1 的次數,k=1,2,…,10。

輸入檔案示例 輸出檔案示例

input.txt output.txt

11 141

1111

111

#include #include #include int main()

}for(i=0; i<10; i++)printf("%d\n",a[i]);

return 0;

}

演算法實現題 統計數字

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

1 1 統計數字問題

題解 000.0 999.9 n個9 則0 9中每個數字出現的次數都是n 10 n 1 即每個數字出現次數相同。但是因為不含前導0.所以要把多算的0給去掉。具體的,設n這個數字的長度為l,則需要減去1111.1 l個1 個多餘的0.然後做個數字dp就好。詳見 include include incl...

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...