在从1到n的正数中1出现的次

简介:
 

题目:输入一个整数n,求从1nn个整数的十进制表示中1出现的次数。

例如输入12,从112这些整数中包含1 的数字有11011121一共出现了5次。

 

如:

30143:
由于3>1,则个位上出现1的次数为(3014+1)*1
由于4>1,则十位上出现1的次数为(301+1)*10
由于1=1,则百位上出现1次数为(30+0)*100+(43+1)
由于0<1,则千位上出现1次数为(3+0)*1000

注:以百位为例,百位出现1为100~199,*100的意思为单步出现了100~199,100次,*30是因为出现了30次100~199,+(43+1)是因为左后一次301**不完整导致。

 

目录
相关文章
|
3月前
判断正数/负数
【10月更文挑战第18天】判断正数/负数。
48 6
|
3月前
适用正数和负数
【10月更文挑战第21天】适用正数和负数。
36 2
|
3月前
使用正数和负数
【10月更文挑战第19天】使用正数和负数。
45 2
|
3月前
判断该数字是正数还是负数或是零
【10月更文挑战第15天】判断该数字是正数还是负数或是零。
62 2
|
3月前
两数相除,如果有余数,输出余数
【10月更文挑战第13天】两数相除,如果有余数,输出余数。
48 4
|
3月前
【编程基础知识】正数负数的二进制位运算(左移 右移 无符号右移)
正数和负数需转换成二进制后进行移位运算。左移低位补0,不影响符号位;右移符号位跟随移动,最高位还原为原符号位;无符号右移高位补0,适用于负数处理。
221 0
|
8月前
|
计算机视觉
浮点数向下取整
浮点数向下取整
51 0
|
人工智能 算法 程序员
求两个正整数的最小公倍数
求两个正整数的最小公倍数
128 1
一个数字的二进制数字里的一的个数(负数用补码)
这是一种解决问题的函数,缺点,会有死循环,((int)pow(-2, i))这个值的结果是整形永远达不到那个数字2147483648,我们必须自己规定那个数字
58 0
十进制与二进制转换(负数+正数)
十进制与二进制转换(负数+正数)
373 0
十进制与二进制转换(负数+正数)