用于检查是否所有人都可以在 Python 中获得席位的程序

假设我们有一个数字 n,有 n 个人在寻找座位,我们还有一个位列表,其中 1 表示已被占用的座位,0 表示空座位。没有两个人可以挨着坐,所以我们必须检查是否所有n个人都能找到座位。

因此,如果输入类似于 n = 2 个座位 = [1, 0, 0, 0, 1, 0, 0],那么输出将为 True,因为它们可以位于索引 2 和 6。

示例

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

def solve(n, seats):

   seats = [0] + seats + [0, 1]

   res = 0

   gap = 0

   for i in seats:

      if i == 0:

         gap += 1

      elif gap > 0:

         res += (gap - 1) // 2

         gap = 0

   return res >= n

n = 2

seats = [1, 0, 0, 0, 1, 0, 0]

print(solve(n, seats))

输入

2, [1, 0, 0, 0, 1, 0, 0]
输出结果
True

以上是 用于检查是否所有人都可以在 Python 中获得席位的程序 的全部内容, 来源链接: utcz.com/z/343683.html

回到顶部