题目描述:
特定大小的停车场,用数组cars表示,其中1表示有车 0表示没车。
车辆大小不一,小车占一个车位(长度1),货车占两个车位(长度2),卡车占三个车位(长度3)。
统计停车场最少可以停多少辆车,返回具体的数目。
输入描述:
整型字符串数组cars,其中1表示有车0表示没车,数组长度<1000。
输出描述:
整型数字字符串,表示最少停车数。
示例:
1.输入:
1,0,1
输出:2
说明:
一个小车占第一个车位
第二个车位空
一个小车占第三个车位
最少有两辆车
2.输入:
1,1,0,0,1,1,1,0,1
输出:3
说明:
一个货车占第1,2个车位
第3,4个车位空
一个卡车占第5,6,7个车位
第8个车位空
一个小车占第9个车位
最少三辆车
#解题想法:因为目的是停的车最少,所以先从三个车位替换,再到两个车位替换,这样车位最大化的
被占用,再依次累加卡车、货车、小车的和即可
#测试用例
#1,0,1
#1,0,1,1
#1,1,0,0,1,1,1,0,1
while 1:
try:
s="1,0,1"
sum=0
while s.count("1,1,1")>0:
s=s.replace("1,1,1","3")
print(s)
while s.count("1,1")>0:
s=s.replace("1,1","2")
print(s)
sum=sum+s.count("1")+s.count("2")+s.count("3")
print(sum)
break
except Exception as e:
print("")
break