现在一般做网站都是去哪家做的,网站建设材料汇报,精品课程网站开发的开题报告,长春网站优化方案体育场找座位 #xff08;100#xff09;
体育场有一排座位#xff08;已有落座观众#xff09;#xff0c;观众之间必须至少一个空位才允许落座#xff1b;在不移动现有观众座位的情况下#xff0c;最多还能坐下多少人#xff1f;
输入描述#xff1a; 数组表示每个…体育场找座位 100
体育场有一排座位已有落座观众观众之间必须至少一个空位才允许落座在不移动现有观众座位的情况下最多还能坐下多少人
输入描述 数组表示每个座位是否坐人0未坐1已坐人数组长度在【1,10000】 输出描述: 输出最多还能坐多少人
示例1 输入10001 输出1
示例2 输入0101 输出0
思路
遍历每个座位若为1则2并继续循环若为0则继续判断左右位置是否为0最终判断该位置是否可以入座判断每个位置的左 右位置时注意判断越界问题 座位数为 1 则会双越界座位数 2 则单越界 # 输入座位
s list(input().strip())
n len(s)# 长度为1 双越界
if n 1:if s[0] 1:result 0else:result 1
else: # 单越界i 0result 0while i n:if s[i] 1:i 2continueelse:left i - 1right i 1condition [(left 0 and s[right] 0),(s[left] 0 and right n),(left 0 and right n and s[left] s[right] 0)]if any(condition):result 1s[i] 1i 2else:i 1print(result)