读书人

求小于N的正整数中含有一的数字的个数

发布时间: 2012-10-11 10:16:10 作者: rapoo

求小于N的正整数中含有1的数字的个数

比如:如果n= 11,那么返回3.因为有1 ,10 ,11

下面是具体实现的代码

  /**     * 判断小于10000的数中含有1的正整数的个数     * @param number     * @return      */    public static int countOne(int number) {        //统计1的个数        int sum = 0;        //把数字转换成字符        String end = String.valueOf(number);        int i = 1;        String begin = String.valueOf(1);//        for (; begin.compareTo(end) != 0; ) {//            //如果包含1就递增//            if (begin.contains("1")) {//                sum++;//            }//            i++;//            begin = String.valueOf(i);//        }                while(begin.compareTo(end) != 0){             if (begin.contains("1")) {                sum++;            }            i++;            begin = String.valueOf(i);        }                return ++sum;    }    public static void main(String[] args) {        int number = 41;        System.out.println(countOne(number));    }


读书人网 >其他相关

热点推荐