Number of Digit One(Medium)

原创 2015年11月20日 14:53:19

1.算法说明:

如3141592,在m(digitDivide)=100时,即要求计算百位上“1”的个数

其中a为31415,b为92,31415中出现了3142次“1”,因为每10个数里面出现1次“1”。而实际上,31415是3141500,所以把31415中1的个数再乘以m。如3141400~3141499中,前缀为31414的数出现了100次,所以需要乘以m(此时是100)。

class Solution {    
    public:    
    int countDigitOne(int n) {        
    
        int ans=0;
        for(long long digitDivide=1;digitDivide<=n;digitDivide*=10)
        {
            int a=n/digitDivide;
            int b=n%digitDivide;
            ans+=(a+8)/10*digitDivide+(a%10==1)*(b+1);
        }
        return ans;
        
    }};

版权声明:本文为博主原创文章,未经博主允许不得转载。

CentOS7下Elastic Stack 5.0日志分析系统搭建

一、概述        Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。 ...
  • amm28824
  • amm28824
  • 2017年01月08日 21:47
  • 1846

NYIST_2013寒假ACM集训队练习赛(2)

集训第二周周四,做出来了7道题目,题目非常水,还有几道没有A出来的也不难,完了花点时间水一下,a过的题目贴在这里。没有a的后面补上。 比赛链接:http://acm.hust.edu.cn/vj...
  • y990041769
  • y990041769
  • 2014年01月14日 19:04
  • 14162

LeetCode Single Number I & II 都符合两个问题额外要求的 通用解法 与 思考过程

首先本能地想到一个算法,可是脑子一转,觉得是要O(n*n)时间复杂度。编译一下,果然没通过。程序如下:不过我觉得本算法最简单,而且通用性是最好的。 然后搜肠刮肚想想那个算法可以优化为时间O(n)的复杂...
  • kenden23
  • kenden23
  • 2013年11月02日 07:33
  • 20527

剑指offer 面试题32:从1到n整数中1出现的次数(leecode233. Number of Digit One) 题解

剑指offer 面试题32:从1到n整数中1出现的次数(Leecode233. Number of Digit One) 提交网址: http://www.nowcoder.com/prac...
  • yanglr2010
  • yanglr2010
  • 2016年05月04日 00:47
  • 1049

【LeetCode-Hard-2】【Number of Digit One】【1~N中‘1’出现次数】

第二题,中等难度,看到正确率略小于0.2就做了 233 Number of Digit One 19.5% Medium Given an integer n, count ...
  • hjy0125
  • hjy0125
  • 2015年07月21日 22:37
  • 343

LeetCode Algorithms 233. Number of Digit One 题解

题目:Given an integer n, count the total number of digit 1 appearing in all non-negative integers less...
  • qq_22652929
  • qq_22652929
  • 2017年06月05日 13:20
  • 137

[LeetCode]Number of Digit One,解题报告

题目Given an integer n, count the total number of digit 1 appearing in all non-negative integers less ...
  • zinss26914
  • zinss26914
  • 2015年07月30日 12:34
  • 1941

算法Week02.04 - LeetCode 233. Number of Digit One

算法Week02.04 - LeetCode 233. Number of Digit One
  • lukeluocn
  • lukeluocn
  • 2016年09月11日 21:01
  • 186

【LeetCode-233】Number of Digit One

一看到这道题就想到了动态规划,但是tle了,先看看我的python代码吧! class Solution(object): # 最容易想到的方法了(动态规划),但是tle了 def ...
  • cold2wind
  • cold2wind
  • 2016年05月04日 16:39
  • 133

LeetCode 233. Number of Digit One

原题网址:https://leetcode.com/problems/number-of-digit-one/ Given an integer n, count the total number...
  • jmspan
  • jmspan
  • 2016年04月06日 04:10
  • 272
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Number of Digit One(Medium)
举报原因:
原因补充:

(最多只允许输入30个字)