Python代码实现简单加法算式计数
Python代码实现简单加法算式计数
问题描述
假设有一个算式'(i) + (i + 1) + (i + 2)',其中(i >= 0)。如果在计算该算式过程中,没有任何一个数位出现进位,则称其为简单的加法算式。
例如:
- 当 i = 3 时,3 + 4 + 5 = 12,有一个进位,因此 3 + 4 + 5 不是一个简单的加法算式;
- 当 i = 112 时,112 + 113 + 114 = 339,没有在任意数位上产生进位,故 112 + 113 + 114 是一个简单的加法算式。
问题: 给定一个正整数 n,问当 i 大于等于 0 且小于 n 时,有多少个算式 '(i) + (i + 1) + (i + 2)' 是简单加法算式。其中 n < 10000。
输入格式
一个整数,表示 n
输出格式
一个整数,表示简单加法算式的个数
示例:
input:
4
output:
3
(注:即简单加法为:0 + 1 + 2;1 + 2 + 3;2 + 3 + 4 三种简单加法。其余 3 + 4 + 5 = 12 有进位不是简单加法。)
代码:
n = int(input())
count = 0
for i in range(n):
a = i % 10 # 个位
b = (i // 10) % 10 # 十位
c = (i // 100) % 10 # 百位
if a + b < 10 and b + c < 10 and a + b + c < 10:
count += 1
print(count)
代码解释:
- 获取输入的整数 n。
- 初始化计数器 count 为 0。
- 使用循环遍历 0 到 n-1 之间的整数 i。
- 提取 i 的个位、十位、百位分别存入变量 a、b、c。
- 判断 a + b、b + c、a + b + c 是否都小于 10,即判断是否没有进位。
- 如果没有进位,则计数器 count 加 1。
- 最后输出计数器 count 的值,即简单加法算式的个数。
原文地址: https://www.cveoy.top/t/topic/nZGy 著作权归作者所有。请勿转载和采集!