統計數字問題

2021-10-08 18:09:41 字數 1037 閱讀 5890

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

輸入只有1 行,給出表示書的總頁碼的整數n。

輸出共有10行,在第k行輸出頁碼中用到數字k-1 的次數,k=1,2,…,10。14

方法二:寫遞迴函式,分別求最高位,一位位破解

#include

#include

#include

using namespace std;

intmain()

//去掉前導0

for(i=

0;i)count[0]

-=pow(

10.0

,i);

for(i=

0;i<

10;i++

)printf

("%d\n"

,count[i]);

}return0;

}

全網找了半天題解,最後找到這個大佬的解答

統計數字問題

在王曉東編著的 演算法設計與實驗題解 中看到的這個問題,問題描述如下 一本書的頁碼從自然數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...

統計數字問題

問題描述 給定乙個整數n,統計從1到n 數字最高位不允許為0 這麼多個數中0,1,2,3,4,5,6,7,8,9分別出現的次數。問題解決 採用遞迴求解統計每乙個數字0,1,2,9出現的次數累加。源 include stdafx.h include int results 10 void count ...