zoukankan      html  css  js  c++  java
  • 1到N中1出现的次数

    这个问题关键在于好好分析一些样例如:
    给定123这个数,你说这个从1到123所有数字中,1出现的次数是多少?
    首先我们要分析个位上1出现的次数,我们看看什么情况下个位出现1:
    1,11,21,31,41,-----91,101,111,121,
    因为从1-123中其实就是有多少个十就行了。
    你看下从1到100个位出现1的情况:
    1,11,21,31,41,51,------91。有多少个呢?
    就是10*1=10个 
    其实就是从01,11,21,31,41,51-----91当然是10了。
    就是1-100中个位有10个1.
    然后再从101-123呢个位有多少个1?
    就是101,111,121,有(2+1)*1=3个。
    其实我们可以这样了。
    那么再分析十位上出现1的情况:
    1-123.
    则有10-19    110-119
    有多少个呢?
    首先看1-100有
    10-19 有10个
    然后110-119 有10个
    则有(1+1)*10=20个
    为什么是1+1?
    其实和123中10位数字有关,你想如果是103呢十位有多少个1?
    就是1*10=10个
    113呢?
    就是1*10+3=13.
    123呢?
    2>1呢
    (1+1)*10=20了。
    于是就有规律了。 

    源代码:






  • 相关阅读:
    NC 6系总账凭证联查原始单据
    NCUAP 利用java自带方法实现导入excel取数据
    NC 5导出Excel
    nc 画界面,触发效果(第一种)
    nc6 用业务插件注册来跑按钮事件
    NC 自定义参照类
    SVN忘记登陆用户
    Oracle 忘记sys与system管理员密码重置操作
    OC-之AFNetworking
    OC-之NSDate、万年历
  • 原文地址:https://www.cnblogs.com/yml435/p/4655474.html
Copyright © 2011-2022 走看看