题目:输入一个整数n,求从1到n这n个整数中的十进制表示中,1出现的次数。
分析:
我们用一个稍微大一点的数字21345作为例子来分析。我们把从1到21345的所有数字分成两段,即1-1345和1346-21345。
先来看1346-21345中1出现的次数。1的出现分为两种情况:一种情况是1出现在最高位(万位)。从1到21345的数字中,1出现在
10000-19999这10000个数字的万位中,一共出现了10000(104)次;另外一种情况是1出现在除了最高位之外的其他位中。例子中
1346-21345,可以分为1346-11345以及11346-21345这两段,每一段都是10000个数,两段也就是20000个数。先分析1346-11345这