输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。

如18出现了1 10 11 12 13 14 15 16 17 18 总计10次

例如一个5位数x=48292

万位数  10000-19999共有10000个

千位数  5*(1000)此时万位数的取值可以是0 1 2 3 4 共5个所以有5种

百位数  00100-48292 共有100*49

十位数 00010-48292 共有482*10

个位数4830*1

总计10000+5000+4900+4820+4830

规律

c >1: 00 1 00 -- ab 1 99,共计 (ab+1)*100种,其中(ab+1)表示万千位可以取00-ab,共计ab+1种。因为c>1所以 ab199<abcde,所以这些数都是在1 -- abcde范围内。

c=0:  00 1 00 -- a (b-1) 1 99, 总共有ab*100种,而a(b-1)200-ab099之间,都没有百位=1的数字出现了。

c=1:  我们可以把c = 1的数字分成以下2种情况之和

00 1 00 -- a(b-1)1 99 :总共ab * 100种可能性;

a(b-1) 2 00 -- ab 0 99:这段数字中百位=1的的数字数目为0;

ab 1 00 -- ab 1 cd:共计cd+1种可能性;

所以c =1的数字数目,等于c=0的数字数目,加上abcde%100 +1。

转载于:https://www.cnblogs.com/masimian/p/4552829.html

求一个数字中1的个数相关推荐

  1. 简单求一个数字尾部零的个数

    求一个数字尾部零的个数 例如:n=2021202000 输出:3 算法思路:数字的最后一位求出并判断是否为零,并且每次判断后就缩小(去掉这个尾部零),再接着判断到第一次判断出这个不符合条件的就给他br ...

  2. 2021.04.06JAVA定义一个数组,随便输入一个数字,判断这个数在数组中是否存在,存在返回数组的下标,否则返回-1

    定义一个数组,随便输入一个数字,判断这个数在数组中是否存在,存在返回数组的下标,否则返回-1 public class TestD {public static void main(String[] ...

  3. 求一个序列中最大的子序列_最大的斐波那契子序列

    求一个序列中最大的子序列 Problem statement: 问题陈述: Given an array with positive number the task to find the large ...

  4. 求一个数组的最大k个数(java)

    问题描述:求一个数组的最大k个数,如,{1,5,8,9,11,2,3}的最大三个数应该是,8,9,11 问题分析: 1.解法一:最直观的做法是将数组从大到小排序,然后选出其中最大的K个数,但是这样的解 ...

  5. JS统计一个字符串中数字字符的个数。

    ** JS统计一个字符串中数字字符的个数. ** 思路整理: 统计一个字符串中的数字字符个数,首先应该先遍历字符串中每一个单字符,然后对每个字符进行判断是否为数字,最后设置一个变量统计数目 具体实现: ...

  6. 求一个字符串中连续出现的次数最多的子串

    求一个字符串中连续出现的次数最多的子串.例如字符串"abababc",最多连续出现的为ab,连续出现三次.要和求一个字符串中的最长重复子串区分开来,还是上面的字符串,那么最长的重复 ...

  7. 统计一个字符串中单词的个数

    <程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p113 习题4 7.统计一个字符串中单词的个数.字符串中两个空格之间的非空格字符串可看做单词. #in ...

  8. 求一个字符串中连续出现次数最多的子串

    http://blog.csdn.net/imcdragon/article/details/6838565解答二 http://hi.baidu.com/icyday315/item/040aada ...

  9. Java黑皮书课后题第6章:*6.20(计算一个字符串中字母的个数)编写一个方法,使用下面的方法体计算字符串中的字母个数。编写一个测试程序,提示用户输入字符串,然后显示字符串中的字母个数

    6.20(计算一个字符串中字母的个数)编写一个方法,使用下面的方法体计算字符串中的字母个数.编写一个测试程序,提示用户输入字符串,然后显示字符串中的字母个数 题目 题目描述 破题 代码 运行示例 题目 ...

最新文章

  1. PhpStorm升级后调用某些类提示phpstorm Unhandled exceptions
  2. ArcPy学习入门(三):ArcPy 函数列表
  3. 玩儿转物联网IoT - 在Beagle Bone Black上运行node.js 程序
  4. 如何解决在每次开机后运行lcm相关命令会提示需要配置IP的问题
  5. scrapy爬取天气存MySQL_Scrapy实战篇(五)之爬取历史天气数据
  6. php mysql 服务器成本_php – 从mysql服务器访问和存储大量数据
  7. Kali Linux Web 渗透测试秘籍 第八章 中间人攻击
  8. 如何在Windows中的命令提示符下删除特定目录中的文件/子文件夹
  9. 【渝粤教育】电大中专电商运营实操 (2)作业 题库
  10. Linux非root用户部署jdk等命令
  11. 【互联网大厂机试真题 - 华为】九宫格
  12. wamp环境变量配置php,WAMP环境配置-PHP安装
  13. 极路由设置虚拟服务器,HiWiFi极路由手机设置教程
  14. spark入门框架+python
  15. 程序员崩溃了!想拿的年终奖怎么说黄就黄?!
  16. 使用组策略远程安装软件-分配和发布
  17. 共享经济app开发方案
  18. 员工人事档案所需资料
  19. php小蛋白奶粉有哪些牌子,部分水解蛋白奶粉有哪些
  20. 在python里是什么意思_python中!=是什么意思

热门文章

  1. LeetCode 1833. 雪糕的最大数量(贪心)
  2. LeetCode 1640. 能否连接形成数组(哈希)
  3. 程序员面试金典 - 面试题 04.12. 求和路径(二叉树递归)
  4. 超级签名源码_企业签名和超级签名有哪些区别?
  5. Python基础(六)--类与对象
  6. 我,大学没毕业,在OpenAI搞AI,想教教你如何提升“研究品味”
  7. 中科院博士整理的机器学习算法知识手册,完整 PDF 开放下载!
  8. 卖萌屋算法岗面试手册上线!通往面试自由之路
  9. Google 资深软件工程师 LeetCode 刷题笔记首次公开
  10. 智能支付稳定性测试实战