题目描述
特定大小的停车场,数组cars[]表示,其中1表示有车,0表示没车。
车辆大小不一,小车占一个车位(长度1),货车占两个车位(长度2),卡车占三个车位(长度3)。
统计停车场最少可以停多少辆车,返回具体的数目。
输入描述
整型字符串数组cars[],其中1表示有车,0表示没车,数组长度小于1000。
输出描述
整型数字字符串,表示最少停车数目。
用例1
输入
1,0,1
输出
2
说明
1个小车占第1个车位
第二个车位空
1个小车占第3个车位
最少有两辆车
用例2
输入
1,1,0,0,1,1,1,0,1
输出
3
说明
1个货车占第1、2个车位
第3、4个车位空
1个卡车占第5、6、7个车位
第8个车位空
1个小车占第9个车位
最少3辆车
package odjava.分100;import java.util.Scanner;public class 停车场车辆统计_70 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);// 输入停车场状态,将逗号去除并将1的连续出现替换为"x",以便统计车辆数量String str = sc.nextLine().replaceAll(",", "").replaceAll("111", "x").replaceAll("11", "x").replaceAll("1", "x");int ans = 0; // 记录停车场内车辆数量的变量// 遍历停车场状态字符串,统计车辆数量for (int i = 0; i < str.length(); i++) {if (str.charAt(i) == 'x') {ans++; // 如果当前位置是车辆则数量加1}}// 输出停车场内车辆数量System.out.println(ans);}
}