از بین تمامی دوستان *سلیب* تنها *سجاد* برای شب در خانه مانده و بقیه رفتهاند.
بازی قبلی برای دو نفر مناسب نبود به همین دلیل بازی جدیدی ابداء کردند که دو نفری بتوانند آن را اجرا کنند.
*سلیب* بازی را به سمت دنیای *IT* پیش میبرد و به *سجاد* ایدهی بازی جدیدش را میگوید.
# توضیح بازی
بازی آنها به این صورت است که در ابتدا مسیری از کامپیوتر *سلیب* به طور تصادفی به نام `path` انتخاب میشود. سپس *سلیب* و *سجاد* هر یک پسوندی را برای خود انتخاب میکنند (مثلا *سلیب* `mp4` و *سجاد* `jpg` انتخاب میکند).
سپس کسی برندهی بازی است که در مسیر انتخاب شده و تمامی زیر مسیرهای آن بیشترین پسوند را داشته باشد
اما متاسفانه *سجاد* میخواهد تقلب کند.
تقلب او به این صورت است که یک نام انتخاب میکند و پسوند تمامی فایلهایی که نام برابر با نام انتخابی او دارند را به پسوند انتخابی خودش تغییر میدهد.
```bash
sajjad.txt
```
در مثال بالا `sajjad` اسم فایل و `txt` پسوند فایل میباشد.
<details class="yellow">
<summary> **مثال بازیای که در آن سجاد تقلب نمیکند** </summary>
```bash
src_folder
├── My-videos
│ └── video.mp4
├── image.jpg
└── video.mp4
```
اگر *سلیب* ```jpg``` و *سجاد* ```mp4``` انتخاب کرده باشد سجاد برنده بازی است.
</details>
<details class="blue">
<summary> **مثال بازیای که در آن سجاد تقلب میکند** </summary>
```bash
src_folder
├── My-videos
│ ├── video2.mp4
│ └── about.txt
├── about.txt
├── image.jpg
└── video1.mp4
```
اگر *سلیب* ```mp4``` و *سجاد* ```jpg``` را انتخاب کرده باشد، *سلیب* برنده بازی است؛ اما سجاد با تقلب روی اسم ```about``` میتواند دو فایل را به پسوند انتخابی خودش (یعنی ```jpg``` ) تغییر داده و برنده بازی شود.
</details>
ما از شما میخواهیم تابعی با نام ```combet``` برای *سجاد* بنویسید تا با دریافت `path` و فرمت های انتخابی *سلیب* و *سجاد* بگویید که *سجاد* میتواند ببرد یا خیر.
<details class="purple">
<summary> **توضیح تابع** `combet` </summary>
این تابع به عنوان ورودی سه متغیر از نوع رشته را میپذیرد، و به عنوان خروجی تابع شما باید نتیجه بازی را بازگرداند.
```python
def combet(SAliB_format, Sajjad_format, path):
pass
```
توجه کنید که نتیجهی بازی بنا به قوانین زیر متغیر هستند پس قوانین را با دقت بخوانید.
</details>
## قوانین بازی
۱- اگر سجاد به طور عادی برندهی بازی میشد تابع شما باید مقدار زیر را برگرداند:
```
Win! Normally!
```
۲- اگر سجاد به طور عادی برندهی بازی نمیشد، ولی میتوانست با تقلب روی اسمی برنده شود، تابع شما باید مقدار زیر را برگرداند:
```
Win! you can win if you cheat on '{cheat_name}'!
```
توجه کنید که `'{cheat_name}'` نام کلمهایست که *سجاد* باید روی آن تقلب کند تا ببرد برای مثال در `مثال بازیای که در آن سجاد تقلب میکند` که چند خط بالاتر توضیح داده شده است، باید مقدار زیر را برگردانید:
```
Win! you can win if you cheat on 'about'!
```
توجه کنید که اگر *سجاد* با تقلب روی چندین اسم میتوانست برنده شود، میتوانید هر یک از اسمها را به دلخواه برگردانید.
۳- اگر *سجاد* هیچ استراتژی بردی نداشت باید مقدار زیر را برگردانید:
```
Lose! you can't win this game!
```
<details class="red">
<summary> **نکات** </summary>
+ تضمین میشود اسم فولدری شامل `.` نمیباشد.
+ تضمین میشود اگر در فولدری دو فایل همنام با پسوند متفاوت وجود داشت شما اگر بر روی نام آن فایل تقلب کنید مشکلی ایجاد نمیشود (یعنی مثلا اگر در یک فولدر `SAliB.txt` همراه `SAliB.mp4` وجود داشت و شما بر روی نام `SAliB` تقلب کنید تعداد فایلها با پسوند انتخابی *سجاد* دو واحد به ازای این دو فایل اضافه میشود).
+ شما حق `rename` کردن فایلی را ندارید و تنها باید بگویید که چه کسی بازی را میبرد.
+ کد شما فقط میتواند از کتابخانههای استاندارد پایتون استفاده کند.
+ کد شما نباید شامل کلمههای `shutil` یا `import sh` یا `from sh` یا `subprocess` یا `os.popen` یا `os.system` باشد.
+ میتوانید فایل اولیهی خام را از [این لینک](https://quera.ir/qbox/download/oyi6IHctS2/folder_khaste_initial%20%282%29.zip) دانلود کنید.
</details>
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.