笔试-座位调整
应用
疫情期间课堂的座位进行了特殊的调整,不能出现两个同学紧挨着,必须隔至少一个空位。
给你一个整数数组desk表示当前座位的占座情况,由若干0和1组成,其中0表示没有占位,1表示占位。在不改变原有座位秩序情况下,还能安排坐几个人?
输入:1 0 0 0 1
第一行是个桌子数组表示作为占座情况,由若干0和1组成,其中0表示没有占位,1表示占位
输出:1
数值表示还能坐几个人
备注:1 ≤ desk.length ≤ 2*10^4
实现
strs = input("请输入占座情况:").split()
desk = [int(i) for i in strs]count = 0
for i in range(0, len(desk)):if desk[i] != 1:if i == 0 and desk[1] == 0:count += 1if i == len(desk)-1 and desk[-2] == 0:count += 1if i > 0 and i < len(desk)-1:if desk[i-1] == 0 and desk[i+1] == 0:count += 1print(count)
请输入占座情况:1 0 0 0 1
1