题目描述:
特定大小的停车场,数组cars[]表示,其中1表示有车,0表示没车。
车辆大小不一,小车占一个车位(长度1),货车占两个车位(长度2),卡车占三个车位(长度3)。
统计停车场最少可以停多少辆车,返回具体的数目。
输入描述:
整型字符串数组cars[],其中1表示有车,0表示没车,数组长度小于1000。
输出描述:
整型数字字符串,表示最少停车数目。
示例 1:
输入
1,0,1
1
输出
2
1
说明
1个小车占第1个车位
第二个车位空
1个小车占第3个车位
最少有两辆车
示例 2:
输入
1,1,0,0,1,1,1,0,1
1
输出
3
1
说明
1个货车占第1、2个车位
第3、4个车位空
1个卡车占第5、6、7个车位
第8个车位空
1个小车占第9个车位
最少3辆车
思路:
分别以‘,’和‘0’切割字符串
再计算最大可能即可
JScript代码
let line = readline();
let str = line.split(",").join(""); //以,分成字符串数组再以字符串的形式拼接
let arr = str.split("0"); //以0分成字符串数组
let n = arr.length;
let res = 0;
for (let i = 0; i < n; i++) {
let len = arr[i].length; //根据每一项的长度去判定
if (len == 0) {
continue;
} else if (len % 3 != 0) {
//当子元素及1的长度除3余数不为零
res = res + (len - (len % 3)) / 3 + 1;
} else {
res = res + len / 3;
}
}
console.log(res);