51nod 1042 數字0 9的數量

2021-08-16 19:26:14 字數 919 閱讀 6099

1042 數字0-9的數量

基準時間限制:1 秒 空間限制:131072 kb 分值: 10 

難度:2級演算法題

給出一段區間a-b,統計這個區間內0-9出現的次數。

比如 10-19,1出現11次(10,11,12,13,14,15,16,17,18,19,其中11包括2個1),其餘數字各出現1次。

input

兩個數a,b(1 <= a <= b <= 10^18)
output

輸出共10行,分別是0-9出現的次數
input示例

10 19
output示例

1111

1111111

思路:兩種求解方法

方法一:求當前數字上出現 目標數p的次數 sum 。設當前數字上的數為 x;有三種情況:

1.x>p   則sum 受到當前位以及高位的影響。 

2.x==p 則sum 受到低位以及高位的影響

3.x方法二:求1到 由低位到當前數字所組成的數 出現 p的次數。同樣有三種情況:

1.x>p   則sum 受到當前位及低位的影響

2.x==p 則sum 受到低位的影響

3.xcode1:

#includeusing namespace std;

typedef long long ll;

ll f(ll n,int p);

int main()

return 0;

}ll solve(int p,ll n)

elseif(digit==p)else

tail+=digit*radix;

radix*=10;

}if(!p)

return ans;

}

51nod 1042 數字0 9的數量

提問8 1 t擇責x 插入 本地 引用 支援 jpg gif png 格式,不要超過 2mb 確定id mentioneditoruploadiframe name mentioneditoruploadiframe src about blank frameborder 0 marginwidth...

51nod 1042 數字0 9的數量

給出一段區間a b,統計這個區間內0 9出現的次數。比如 10 19,1出現11次 10,11,12,13,14,15,16,17,18,19,其中11包括2個1 其餘數字各出現1次。input 兩個數a,b 1 a b 10 18 output 輸出共10行,分別是0 9出現的次數input示例 ...

51nod 1042 數字0 9的數量 數字DP

題目 給出一段區間a b,統計這個區間內0 9出現的次數。比如 10 19,1出現11次 10,11,12,13,14,15,16,17,18,19,其中11包括2個1 其餘數字各出現1次。input 兩個數a,b 1 a b 10 18 output 輸出共10行,分別是0 9出現的次數 這題感覺...