📅  最后修改于: 2023-12-03 15:28:47.272000             🧑  作者: Mango
在这道题中,我们需要处理门的开合状态。门只能以2个状态之一开启或关闭,我们需要编写一个程序来模拟给定门的开合情况。
实现一个函数 flip_doors(n:int) ,参数 n 代表门的数量,返回值为列表,列表中的元素代表每扇门的最终状态(0 代表关闭状态,1 代表开启状态)。
flip_doors 函数将以如下方式操作门:
输入:
flip_doors(4)
输出:
[1, 0, 0, 1]
解释:
因此,最终状态为[1,0,0,1]。
def flip_doors(n:int)->List[int]:
doors = [0 for i in range(n)]
for i in range(1, n):
j = i
while j < n:
doors[j] = 1 - doors[j]
j += i+1 if (i+1)%2==0 else i
return doors