展开

文章目录

修改历史

历史修改版本

  1. 2021-01-20 16:45:21

[简单]设计停车系统

2020-10-10 15:32:19 Leetcode 407

简介

简单难度题目,通过率85.7%。这道题目是十分的简单的,在leetcode上面的通过率也比较高。通过对通过率的排名,这道题目的通过率排名在第2,可想而知是多么的简单的一道题,啊哈哈哈~~

题目描述

请你给一个停车场设计一个停车系统。停车场总共有三种不同大小的车位:大,中和小,每种尺寸分别有固定数目的车位。

请你实现 ParkingSystem 类:

  • ParkingSystem(int big, int medium, int small) 初始化 ParkingSystem 类,三个参数分别对应每种停车位的数目。
  • bool addCar(int carType) 检车是否有 carType 对应的停车位。 carType 有三种类型:大,中,小,分别用数字 1, 2 和 3 表示。一辆车只能停在  carType 对应尺寸的停车位中。如果没有空车位,请返回 false ,否则将该车停入车位并返回 true 。

示例 1:

输入:
["ParkingSystem", "addCar", "addCar", "addCar", "addCar"]
[[1, 1, 0], [1], [2], [3], [1]]
输出:
[null, true, true, false, false]

解释:
ParkingSystem parkingSystem = new ParkingSystem(1, 1, 0);
parkingSystem.addCar(1); // 返回 true ,因为有 1 个空的大车位
parkingSystem.addCar(2); // 返回 true ,因为有 1 个空的中车位
parkingSystem.addCar(3); // 返回 false ,因为没有空的小车位
parkingSystem.addCar(1); // 返回 false ,因为没有空的大车位,唯一一个大车位已经被占据了

题解

这道题目是十分的简单的,在leetcode上面的通过率也比较高。下面的代码为题解。

class ParkingSystem:

    def __init__(self, big, medium, small):
        self.data = [0, big, medium, small]

    def addCar(self, carType):
        if self.data[carType] <= 0:
            return False
        else:
            self.data[carType] -= 1
            return True


obj = ParkingSystem(1, 1, 0)
print obj.addCar(1)
print obj.addCar(2)
print obj.addCar(3)
print obj.addCar(1)

 

当前共有3条评论


k9ox38 用户

小花生牛逼

清水 博主 回复:k9ox38

哈哈哈 那天晚上刚好写了这博客 然后就评论在这下面了 哈哈


清水 博主

小花生,精忠报国…