给定两个整数 a 和 b,求 a 和 b 之间的所有数字中 0∼9 的出现次数。 例如,a=1024,b=1032,则 a 和 b 之间共有 9 个数如下: 1024 1025 1026 1027 1028 1029 1030 1031 1032 其中 0 出现 10 次,1 出现 10 次,2 出现 7 次,3 出现 3 次等等… 输入格式 输入包含多组测试数据。 每组测试数据占一行,包含两个整数 a 和 b。 当读入一行为 0 0 时,表示输入终止,且该行不作处理。 输出格式 每组数据输出一个结果,每个结果占一行。 每个结果包含十个用空格隔开的数字,第一个数字表示 0 出现的次数,第二个数字表示 1 出现的次数,以此类推。 数据范围 0<a,b<100000000
时间: 2024-04-07 19:33:32 浏览: 169
0到9数字出现的次数
对于给定的两个整数a和b,我们可以通过遍历a到b之间的所有数字,并统计每个数字中0到9的出现次数来解决这个问题。
具体步骤如下:
1. 读取输入的两个整数a和b。
2. 当a等于0且b等于0时,终止输入。
3. 初始化一个大小为10的数组count,用于记录0到9的出现次数。
4. 遍历a到b之间的所有数字:
- 将当前数字转换为字符串,便于统计每个数字中0到9的出现次数。
- 对当前数字的每一位进行遍历:
- 将当前位上的数字转换为整数,并将对应的count数组元素加1。
5. 输出count数组中的元素,每个元素之间用空格隔开。
以下是实现该算法的示例代码:
```python
while True:
a, b = map(int, input().split())
if a == 0 and b == 0:
break
count = [0] * 10
for num in range(a, b + 1):
for digit in str(num):
count[int(digit)] += 1
print(' '.join(map(str, count)))
```
希望这能解答你的问题!如果还有其他问题,请随时提问。
阅读全文