0
点赞
收藏
分享

微信扫一扫

2022-01-23(剑指 Offer 43. 1~n 整数中 1 出现的次数)

hwwjian 2022-01-23 阅读 30
java
class Solution {
    public int countDigitOne(int n) {
        long mulk = 1;
        int ans = 0;
        for (int k = 0; n >= mulk; ++k) {
            ans += (n / (mulk * 10)) * mulk + Math.min(Math.max(n % (mulk * 10) - mulk + 1, 0), mulk);
            mulk *= 10;
        }
        return ans;
    }
}
举报

相关推荐

0 条评论