算法1
思路:这个题关键点在设置一个数组存数,将所有车辆的总和存入tot数组里,其实最初一直不理解,为什么要cartype减一,不是因为建立数组下标的原因,而是没明白addCar这个函数的意思,后来明白了,是因为ParkingSystem函数相当于已经知道了每个车库存的车辆,add是去对应的车库加入操作而已
C++ 代码
class ParkingSystem {
public:
vector<int> tot;//开辟一个tot数组,用于存储剩余位数
ParkingSystem(int big, int medium, int small) {
tot={big,medium,small};//刚开始讲三个车位的数量初始化到tot
}
bool addCar(int carType) {
int t=carType-1;//tot数组是从0开始的,cartype是从1开始的
if(tot[t]>=1)//判断一下对应车场里面有没有车位
{
tot[t]--;
return true;
}
return false;//没有车位,返回false
}
};
/**
* Your ParkingSystem object will be instantiated and called as such:
* ParkingSystem* obj = new ParkingSystem(big, medium, small);
* bool param_1 = obj->addCar(carType);
*/