在Python中查找数字三角形的第一行偶数位置的程序
假设我们正在生成一个数字三角形,如下所示
1
1 1 1
1 2 3 2 1
1 3 6 7 6 3 1
每行的元素是通过在其顶部加三个数字来生成的。现在如果我们有一行数 l,我们必须找到该行中第一个偶数的位置。位置值从 1 开始计数。
因此,如果输入为 l = 5,则输出将为 2
1
1 1 1
1 2 3 2 1
1 3 6 7 6 3 1
1 4 10 16 19 16 10 4 1
要解决此问题,我们将按以下步骤进行 −
- 如果 l 与 1 相同或 l 与 2 相同,则
- 返回 -1
- 否则,当 l 模 2 与 0 相同时,则
- 如果 l 模 4 与 0 相同,则
- 返回 3
- 否则,
- 返回 4
- 如果 l 模 4 与 0 相同,则
- 否则,
- 返回 2
示例
让我们看以下实现,以更好地理解−
def solve(l):
if l == 1 or l == 2 :
return -1
elif l % 2 == 0:
if l % 4 == 0:
return 3
else:
return 4
else:
return 2
l = 5
print(solve(l))
输入
5
输出
2