1. 程式人生 > >整數中1出現的次數(從1到n的整數中1出現的次數)

整數中1出現的次數(從1到n的整數中1出現的次數)

題目

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

程式碼

public int NumberOf1Between1AndN_Solution(int n) {
        int count=0;
        while(n>0){
            String str=String.valueOf(n);
            char
[] chars=str.toCharArray(); for(int i=0;i<chars.length;i++) { if(chars[i]=='1') count++; } n--; } return count; }