بهمنظور توجه بیشتر به مشتریان برتر، برخی از کاربران را VIP لحاظ میکنیم. اگر یک مشتری بیشتر از ۴ بار از خدمات کارواش استفاده کند، بهصورت خودکار در ردهٔ VIP قرار میگیرد.
مشتریان VIP، یک بخش جداگانه با ۵ جایگاه شستوشو دارند (که برای نوبتدهی به کاربران عادی استفاده نمیشوند). شمارهی این جایگاهها از ۱۱ تا ۱۵ است. هنگام نوبتدهی به این مشتریان تا جای ممکن از این جایگاهها استفاده میشود؛ مگر اینکه
+ در رزرو earliest، جایگاههای عادی برای زمان نزدیکتری قابل رزرو بودند.
+ در رزرو با روز و ساعت مشخص، هیچ جایگاه VIP، خالی نباشد.
بدین منظور یک دستور اضافه هم نیاز خواهیم داشت که لیست مشتریان VIP را اعلام کند.
## فرمت ورودی خروجی
فرمت ورودی
```
reserve earliest <car-type> <list-of-services> user#<user-id>
```
توجه فرمایید که `<user-id>` به شکل یک عدد سه رقمی از `000` تا `999` گزارش میشود.
فرمت خروجی
```
reserved (<day-number> <time>)
Line: <line-number>
Car Type: <car-type>
User: <user-id>
Services:
- <service> (<cost>)
Total Cost: <total-cost>
```
فرمت ورودی
```
reserve <day-number> <time> <car-type> <list-of-services> user#<user-id>
```
فرمت خروجی
```
reserved (<day-number> <time>)
Line: <line-number>
Car Type: <car-type>
User: <user-id>
Services:
- <service> (<cost>)
Total Cost: <total-cost>
```
فرمت ورودی
```
vip-list
```
فرمت خروجی
```
user#<user-id> user#<user-id> user#<user-id> …
```
## ورودی/خروجی نمونه برنامه
ورودی نمونه
```
reserve earliest sedan rooshooyi user#007
```
خروجی نمونه
```
reserved (7 18:00)
Line: 05
Car Type: Sedan
User: 007
Services:
- rooshooyi (30T)
Total Cost: 30T
```
ورودی نمونه
```
reserve earliest suv rooshooyi+nezafat user#025
```
خروجی نمونه
```
reserved (6 18:00)
Line: 05
Car Type: suv
User: 025
Services:
- rooshooyi (40T)
- nezafat (20T)
Total Cost: 60T
```
ورودی نمونه
```
vip-list
```
خروجی نمونه
*با این فرض که هر کدام از این کاربران، در ردهی VIP قرار گرفتهاند.*
```
user#008 user#143 user#167
```