Python程序:查找三角形数字序列中第l行的第一个偶数的位置


假设我们正在生成如下所示的数字三角形

      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
  • 否则,
    • 返回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

更新于: 2021年10月25日

111 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.