sdnu 1024糾結的頁碼問題(轉化到普遍規律)

2021-08-11 04:42:10 字數 678 閱讀 8056

要期末考試了,陶陶在看書複習,看著看著就走神了,他注意到書的每頁都乙個頁碼,而且頁碼都是阿拉伯數字,於是他就想知道乙個很糾結的問題,就是從1到n頁,阿拉伯數字1一共出現多少次。

輸入只有一行乙個整數n(1<=n<=50000)

輸入阿拉伯數字1出現的次數

30

13

sdnu acm-icpc 2011複賽(2010級)

這道題引發思考對於x【1,9】,輸入乙個整數n,計算1---n時,x出現次數。

參考部落格

如果使用列舉的話,會使時間複雜度很高,所以直接在n上運用數學公式計算。

思路:對於n,考慮各個位上x出現的個數。

設每個位為i,即個位 i = 1,十位 i = 2,以此類推。

n每增加10,個位出現一次

n每增加100,十位出現10次 ……

發現規律n每增加10ei,i位上增加10ei-1次。

但是每個位上會出現比x大,比x小,和x相等的情況,寫**要注意。

針對x = 1

#include #include using namespace std;

int main()

printf("%d\n", sum);

return 0;

}

sdnu1024 糾結的頁碼問題

1024.糾結的頁碼問題 time limit 1000 ms memory limit 32768 kb total submission s 230 accepted submission s 138 description 要期末考試了,陶陶在看書複習,看著看著就走神了,他注意到書的每頁都乙個...

SDNU 1014 書的頁碼問題

time limit 1000 ms memory limit 32768 kb total submission s 1109 accepted submission s 256 description 對於一本共有n頁的書,它的頁碼從1開始編號,一直到n,頁碼中沒有無用的0,則該書頁碼中分別共用...

糾結的問題

1.工具類中,配置,資料庫連線,日誌等這些系統基礎性的變數或常量,通過引數的方式傳入好,還是通過import匯入好?引數傳入的好處 該工具類與當前系統的依賴性比較低,可以很容易地把該工具類移植到其他系統,import匯入的好處,工具類的上層不需要關注太多配置,資料庫連線和日誌這些東西,也就是呼叫介面...