Python 中检查所有 1 是否连续存在的程序


假设我们有一个名为 nums 的数字列表,其中至少包含一个值为 1 的元素。我们必须检查所有 1 是否连续出现。

因此,如果输入类似于 nums = [8, 2, 1, 1, 1, 3, 5],则输出将为 True。

为了解决这个问题,我们将遵循以下步骤:

  • visited := 0

  • 对于 nums 中的每个 x,执行以下操作:

    • 如果 x 等于 1,则

      • 如果 visited 等于 2,则

        • 返回 False

      • visited := 1

    • 否则,当 visited 不为零时,则

      • visited := 2

  • 返回 True

示例

让我们看看以下实现以获得更好的理解

def solve(nums):
   visited = 0
   for x in nums:
      if x == 1:
         if visited == 2:
            return False
         visited = 1
      elif visited:
         visited = 2
   return True

nums = [8, 2, 1, 1, 1, 3, 5]
print(solve(nums))

输入

[8, 2, 1, 1, 1, 3, 5]

输出

True

更新于:2021 年 10 月 11 日

111 次浏览

开启你的 职业

通过完成课程获得认证

开始
广告