Ավտոկայանատեղի

Ստեղծեք ParkingLot class, որը կառավարում է մեքենաների կայանումը: Այս class-ը մի քանի գործառույթներ ունի. այն պետք է օգնի կայանել մեքենան, բաց թողնել մեքենան և հաղորդել ազատ մնացած տեղերի քանակը:
Ստեղծեք Car class, որը ներկայացնում է մեքենա, որը կարելի է կայանել ավտոկայանատեղիում:
Ձեզ անհրաժեշտ է իրականացնել հետևյալը.
  • Car class-ը ստեղծման ժամանակ պետք է տրամադրվի car_id ատրիբուտով: Բոլոր հետագա գործողությունները պետք է հաշվի առնեն car_id-ն։
  • ParkingLot class՝
    • total_spots ատրիբուտ - Ավտոկայանատեղիում կայանատեղերի ընդհանուր թիվը, որը պետք է տրամադրվի կայանատեղիի օբյեկտի ստեղծման ժամանակ։
    • park(car) մեթոդ - Կայանում է մեքենան (Car) ավտոկայանատեղիում: Եթե ավտոկայանատեղին ամբողջությամբ զբաղված է, այն պետք է տպի՝ Parking lot is full։
    • release(car) մեթոդ - Ավտոմեքենան (Car) բաց է թողնում ավտոկայանատեղից։ Եթե մեքենան կայանատեղիում չէ, պետք է տպի` Car not found in the parking lot։
    • spots_left() մեթոդ - Վերադարձնում է մի ամբողջ թիվ, որը ներկայացնում է կայանատեղիում առկա կայանման տեղերի քանակը:
Մուտք
Ելք
car1 = Car(1); car2 = Car(2); lot = ParkingLot(2); print(lot.spots_left()); lot.park(car1); print(lot.spots_left()); lot.park(car2); print(lot.spots_left()); lot.release(car1); print(lot.spots_left());
2 1 0 1
car1 = Car(1); car2 = Car(2); lot = ParkingLot(1); print(lot.spots_left()); lot.release(car1); print(lot.spots_left()); lot.park(car1); print(lot.spots_left()); lot.park(car2); print(lot.spots_left())
1 Car not found in the parking lot 1 0 Parking lot is full 0
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue