标题:
- 停车场cars[]数组表示,其中值1为有车,0为无车
- 车有三种大小,小车占位1,卡车占位2,货车占位3
- 求最少可以停多少车
输入描述
- 输入 整型字符串数组cars[],其中1表示有车,0表示没车,数组长度小于1000。
- 输出 整型数字字符串,表示最少停车数目
示例
输入 1,0,1
输出 2
说明 1个小车占第1个车位 第二个车位空 1个小车占第3个车位 最少有两辆车
输入1,1,0,0,1,1,1,0,1
输出3
思路
- minCarCount是我们最后要输出的数
- placseCount是停车场有车位的数
- 遍历车位:
如果1:placseCount++
如果非1但是placseCount非0: minCarCount++ placseCount=0
如果placseCount===3或是最后一个车位: minCarCount++ placseCount=0
代码
function carParks(cars) {
let placseCount = 0;
let minCarCount = 0;
for (let i = 0; i < cars.length; i++) {
if (cars[i] === 1) {
placseCount++;
} else if (placseCount != 0) {
minCarCount++;
placseCount = 0;
}
if (placseCount === 3 || i == cars.length - 1) {
minCarCount++;
placseCount = 0
}
}
console.log(minCarCount);
}
carParks([1,0,1,1,1,1])