محمد، سجاد، مهیار و کاوان به مطالعه کتاب بسیار علاقه دارند. از این رو محمد پیشنهاد داد که در روز معینی از هفته دور هم جمع شوند و جلسات مطالعه کتابخوانی دستهجمعی برگزار کنند. در یکی از جلسات کتابخوانی، پس از مطالعه کتاب، این چهار نفر تصمیم گرفتند مهارت خود را در زمینه تحلیل داده، همراه با چاشنی کتابخوانی محک بزنند. آن ها تصمیم گرفتند مسابقهای میان خود برگزار کنند و با استفاده از داده متنی یک کتاب، به چند سوال پاسخ بدهند. اینک محمد، سجاد، مهیار و کاوان از شما دعوت کردهاند همراه آنها در این مسابقه شرکت کنید و مهارت خود را بسنجید.
![توضیح تصویر](https://quera.org/qbox/view/WZCK5K3tcO/1_mhWZ6BhAKaaVNEwBN_rkJw.jpeg)
# مجموعه داده
| مجموعه داده سوال را میتوانید از [این لینک](/contest/assignments/45363/download_problem_initial_project/157860/) دانلود کنید.|
| :--: |
هنگامی که این فایل را از حالت فشرده خارج کنید، فایل (`words.csv`) در اختیار شما خواهد بود. این فایل ۲۲۲۱۴۸ سطر و ۱ ستون دارد.
جزییات فایل `words.csv` در جدول زیر آمدهاست:
| نام ستون | توضیحات ستون |
|:----------|:------------------:|
| words | یک کلمه |
<details class="yellow">
<summary>
**بیشتر بدانید**
</summary>
کلماتی که در این دیتافریم مشاهده میکنید، همگی کلمات کتاب معروف امریکایی نهنگ سفید نوشته *Herman Melville* است.
از طریق [این لینک از ویکیپدیا](https://en.wikipedia.org/wiki/Moby-Dick) میتوانید اطلاعات بیشتری در مورد کتاب بهدست بیاورید!
</details>
# صورت مسئله
در ابتدای کار، شما میخواهید با بررسی اولیه به اکتشاف در مجموعه دادگان متنی (`words.csv`) بپردازید و به سوالات زیر پاسخ بدهید (مثال خروجی هر سوال، در زیر آن آورده شدهاست).
1. تعداد کلمات منحصر به فرد متن را پیدا کنید.
```
1000
```
2. پنج کلمه پرتکرار به همراه تعداد تکرار آنها در متن را پیدا کنید و به شکل نزولی بر اساس تعداد تکرار و فرمت زیر وارد کنید (توجه کنید ممکن است کلمه فقط شامل یک کاراکتر باشد).
```
quera:1001 sajad:1000 mohammad:999 kavan:998 mahyar:997
```
3. طولانیترین کلمهای که با کاراکتر `q` شروع میشود را پیدا کنید.
```
quit
```
4. کلمات منحصر به فردی که تعداد کاراکترهای آنها برابر هشت است را پیدا کرده و به شکل صعودی مرتب کنید(به ترتیب حروف الفبا)، سپس پنج کلمه اول از لیست مرتب شده را به فرمت زیر وارد کنید.
```
kavanalp mahyarrz mohammad queracup sajjadyp
```
<details class="green">
<summary>
**راهنمایی**
</summary>
ابتدا کلمات منحصر به فرد را پیدا کنید، سپس از بین آنها، کلماتی را به شکل صعودی مرتبسازی کنید که طولشان برابر ۸ کاراکتر باشد!
</details>
این مرحله در مجموع، شامل 4 سوال (هر سوال، ۱۲/۵ امتیاز) میباشد. در صورتی که به تمامی سوالات پاسخ صحیح بدهید، بایستی که بتوانید ۵۰ امتیاز از این مرحله کسب کنید.
# خروجی
برای ارسال پاسخ، جواب هر سوال را مشابه مثال، در یک سطر از یک فایل `text` بنویسید. در نهایت یک فایل چهار خطی با نام **output.txt** را برای ما بارگذاری کنید.
**_در صورتی که جواب سوالی را نمیدانید در سطر مربوطه ۱- وارد کنید._**
## نمونه خروجی ۱
```
1000
quera:1001 sajad:1000 mohammad:999 kavan:998 mahyar:997
quit
kavanalp mahyarrz mohammad queracup sajjadyp
```
<details class="violet">
<summary>**توضیحات**</summary>
در خط _i_ ام جواب سوال _i_ ام نوشته شدهاست.
</details>
## نمونه خروجی ۲
```
3256
-1
quantifications
-1
```
<details class="violet">
<summary>**توضیحات**</summary>
چون پاسخ سوال دوم و چهارم را نمیدانستید، به جای آن عدد ۱- نوشتهاید!
</details>
<details class="red">
<summary>
**هشدار 😱**
</summary>
فراموش نکنید که **قبل از پایان زمان مسابقه**، **بایستی** تمامی کدهای این مسابقه را از قسمت **بارگذاری کُد** برای ما ارسال کنید. در غیر این صورت، شما از این مسابقه، امتیازی کسب نمی کنید.
توجه داشته باشید که اگر از `jupter notebook` استفاده می کنید بایستی همانند توضیحات قسمت **بارگذاری کُد**، خروجی `.py` را دریافت و برای ارسال در نظر بگیرید. ارسال فایلهای `jupyter` همانند `.ipynb` مورد قبول واقع نخواهند شد.
</details>