整數中1出現的次數(劍指offer 31)

2022-08-27 00:27:12 字數 613 閱讀 8884

求出113的整數中1出現的次數,並算出1001300的整數中1出現的次數?為此他特別數了一下1~13中包含1的數字有1、10、11、12、13因此共出現6次,但是對於後面問題他就沒轍了。acmer希望你們幫幫他,並把問題更加普遍化,可以很快的求出任意非負整數區間中1出現的次數(從1 到 n 中1出現的次數)。

方法一:暴力1-n個數字即可。時間複雜度o(n*log(n))

方法二:通過對1-n的分區間討論(遞迴的過程),在求1-n的時候,分為兩個區間,第乙個區間是1-b(b是n去掉首部數字之後的數字), 第二個區間是(b+1, n)。對於每個區間的計算時,分為了兩種情況,第一種情況是當前n的首部數字是1,第二種情況是除了首位的其他位是1。主要是這兩中情亂的討論。

劍指offer 整數中1出現的次數

求出1 13的整數中1出現的次數,並算出100 1300的整數中1出現的次數?為此他特別數了一下1 13中包含1的數字有1 10 11 12 13因此共出現6次,但是對於後面問題他就沒轍了。acmer希望你們幫幫他,並把問題更加普遍化,可以很快的求出任意非負整數區間中1出現的次數。這是劍指offer...

《劍指office》整數中1出現的次數

題目描述 求出1 13的整數中1出現的次數,並算出100 1300的整數中1出現的次數?為此他特別數了一下1 13中包含1的數字有1 10 11 12 13因此共出現6次,但是對於後面問題他就沒轍了。acmer希望你們幫幫他,並把問題更加普遍化,可以很快的求出任意非負整數區間中1出現的次數。解題思路...

劍指off 整數中1出現的次數

求出1 13的整數中1出現的次數,並算出100 1300的整數中1出現的次數?為此他特別數了一下1 13中包含1的數字有1 10 11 12 13因此共出現6次,但是對於後面問題他就沒轍了。acmer希望你們幫幫他,並把問題更加普遍化,可以很快的求出任意非負整數區間中1出現的次數 從1 到 n 中1...