[置顶] 剑指offer:第32题从1到n整数中1出现的次数
2017-07-15 17:18
211 查看
编程之美上的思路: public class _Test_32 { public long countOne(long n) { long count = 0; long i = 1; long current = 0, after = 0, before = 0; while ((n / i) != 0) { current = (n / i) % 10; // 当前位数字 before = n / (i * 10); // 高位数字 after = n - (n / i) * i; // 低位数字 if (current > 1) count = count + (before + 1) * i; else if (current == 0) count = count + before * i; else if (current == 1) count = count + before * i + after + 1; i = i * 10; } return count; } }
相关文章推荐
- 剑指offer-32从1到n整数出现1的次数
- 《剑指Offer》学习笔记--面试题32:从1到n整数中1出现的次数
- 剑指Offer-43:1~n整数中1出现的次数
- 剑指offer(31)—整数1出现的次数
- 剑指offer-面试题32-从1到n整数中1出现的次数
- 《剑指offer》整数中1出现的次数(从1到n整数中1出现的次数)
- 剑指offer-整数中1出现的次数
- 剑指Offer(java版):从1到n整数中1出现的次数
- 剑指offer(四十)之整数中1出现的次数(从1到n整数中1出现的次数)
- 剑指Offer系列-面试题32:从1到n整数中1出现的次数
- 《剑指offer》面试题32----从1到n整数中1出现的次数
- 剑指offer——31.整数中1出现的次数
- 关于剑指offer上“从1到n整数中1出现的次数”题的理解
- 剑指offer系列之30:从1到n整数中1出现的次数
- 剑指offer-整数中1出现的次数
- 从1到n整数中1出现的次数——剑指offer面试题32
- [置顶] 剑指offer:第29题寻找数组中出现次数超过一半的数字
- 剑指offer-整数中1出现的次数(从1到n整数中1出现的次数)
- 剑指offer——面试题32:从1到n整数中1出现的次数
- 剑指offer——整数中1出现的次数