یخدارچی


  • محدودیت زمان: ۰.۵ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

محمدجواد که پشت‌کار بالایی دارد، در ابتدا یک آبدارچی بود (البته حالا او با پشت‌کارش تمامی پله‌های ترقی را طی کرده‌است). او باید در هر لحظه می‌دانست که وضعیت آب داخل سماور چگونه است. برای همین او یک دماسنج به سماور وصل کرد و باید با توجه به دمای آب داخل سماور وضعیت آب را می‌سنجید. می‌دانیم در فشار معمولی آب در دمای بیش از ۱۰۰ درجه بخار است و در دمای کمتر از ۰ یخ می‌زند.(ممکن است در زمستان آب داخل سماور یخ بزند) حالا شما می‌دانید برای موفقیت باید پشت‌کار داشته باشید. برای همین دیر یا زود باید تصمیم بگیرید که راه محمدجواد را ادامه دهید. برای این کار شما باید با توجه به دمای داخل سماور وضعیت آب (در واقع H2OH_2O) داخل سماور را مشخص کنید.

ورودی🔗

در سطر اول ورودی یک عدد صحیح TT آمده‌است که نشان‌دهنده‌ی دمای آب داخل سماور است.

273<T6 000 -273 < T \le 6\ 000

خروجی🔗

اگر دمای داخل سماور بیش از ۱۰۰ درجه بود، "Steam" چاپ شود. اگر دمای آن زیر ۰ بود، "Ice" و در غیر این صورت، "Water" چاپ شود.

مثال🔗

ورودی نمونه ۱🔗

110
Plain text

خروجی نمونه ۱🔗

Steam
Plain text

ورودی نمونه ۲🔗

100
Plain text

خروجی نمونه ۲🔗

Water
Plain text

ورودی نمونه ۳🔗

-200
Plain text

خروجی نمونه ۳🔗

Ice
Plain text

بلندگو


  • محدودیت زمان: ۰.۵ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

محمدجواد که پشت‌کار بالایی دارد، میخواهد به سخنرانی‌ای در مورد پشت‌کار گوش دهد و آن را برای خود یادداشت کند. متاسفانه مسئولین صدا اکوی صدا را در بیشترین حالت ممکن گذاشته اند و به ازای هر کلمه‌ی nn حرفی که سخنران میزند، nn کلمه پخش میشود که هر بار یک حرف از اول کلمه که قبلا حذف نشده حذف میشود و سپس به جای آن حرف، حرف بعدی آن گذاشته میشود. برای مثال اگر سخنران کلمه‌ی golabi را بگوید، بلندگو به این شکل به صدا در می‌آید:

golabi
oolabi
lllabi
aaaabi
bbbbbi
iiiiii
Plain text

حال به شما یک کلمه که سخنران گفته‌است داده می‌شود و شما باید کلماتی که از بلندگو پخش می‌شود را چاپ کنید تا محمدجواد بتواند آن را یادداشت کند.

ورودی🔗

در تنها خط ورودی یک رشته می‌آید، که نشان دهنده‌ی کلمه ایست که سخنران گفته است. فرض کنید طول رشته nn است.

1n20 1 \le n \le 20

خروجی🔗

خروجی شامل nn خط است که نشان‌دهنده‌ی کلماتی است که از بلندگو بیرون می‌آید.

مثال🔗

ورودی نمونه ۱🔗

golabi
Plain text

خروجی نمونه ۱🔗

golabi
oolabi
lllabi
aaaabi
bbbbbi
iiiiii
Plain text

ورودی نمونه ۲🔗

codecup
Plain text

خروجی نمونه ۲🔗

codecup
oodecup
dddecup
eeeecup
cccccup
uuuuuup
ppppppp
Plain text

اوقات فراغت


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

محمدجواد که پشت‌کار بالایی دارد، در اوقات فراغت از کارش، جدول حل می‌کند. او این بار به جدولی برخورده که از حروف کوچک الفبای انگلیسی تشکیل شده است و در انتهای آن کلمه ای داده شده که باید تعداد تکرار های آن در جدول شمرده شود. هر تکرار کلمه در جدول به معنای ظاهر شدن کلمه مورد نظر به صورت افقی و از چپ به راست یا عمودی و از بالا به پایین در قسمتی از جدول است. برای مثال در جدول زیر، کلمه queraquera ۲ بار و کلمه snowsnow ۱ بار تکرار شده است. (برای درک بهتر صورت سوال به نمونه ها مراجعه کنید.)

quera
users
enjoy
round
award
Plain text

محمدجواد که باید به زودی به سر کارش برگردد، از شما خواسته جدول را برایش حل کنید.

ورودی🔗

در سطر اول ورودی اعداد nn و mm می‌آیند که نشان دهنده تعداد سطر ها و تعداد ستون های جدول هستند. در ادامه nn خط می‌آید که در iiمین آنها رشته ای به طول mm متشکل از حروف کوچک الفبای انگلیسی آمده که نشان دهنده iiمین سطر جدول است. در آخرین خط ورودی رشته ss می‌آید که نشان دهنده کلمه مورد جستجو در جدول است.

1n,m50 1 \le n, m \le 50 1s50 1 \le |s| \le 50

خروجی🔗

در تنها خط خروجی باید تعداد تکرار های کلمه مورد نظر در جدول چاپ شود.

مثال🔗

ورودی نمونه ۱🔗

5 5
quera
users
enjoy
round
award
quera
Plain text

خروجی نمونه ۱🔗

2
Plain text

ورودی نمونه ۲🔗

2 8
abababab
babababa
baba
Plain text

خروجی نمونه ۲🔗

5
Plain text

کلمه baba به صورت افقی و از چپ به راست در سطر اول ۲ بار و در سطر دوم ۳ بار ظاهر شده است و به صورت عمودی و از بالا به پایین در جدول ظاهر نشده است.

همکاری پر دردسر


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

محمدجواد که پشت‌کار بالایی دارد، به همراه مصطفی که آدمی کاری است، در یک شرکت کار می‌کنند. محمدجواد nn، و مصطفی mm نوع کار در شرکت انجام می‌دهند. چندی است مشکلات مالی شرکت زیاد شده است و رییس می‌خواهد تعدیل نیرو کند. اگر یکی از افراد در شرکت هیچ‌کاری اضافه بر دیگری نداشته باشد، در شرکت بی‌فایده است. حالا وظیفه‌ی شماست که به آنها بگویید که آیا کسی از آنها بی‌فایده است یا نه. اگر مصطفی تمام کارهایی که محمدجواد انجام می‌دهد را انجام بدهد و کار اضافه‌ای نیز داشته باشد، حضور محمدجواد در شرکت بی‌فایده است. اگر عکس این حالت باشد، مصطفی فایده‌ای برای شرکت ندارد. اگر هر دو دقیقا یک مجموعه از کار‌ها را انجام می‌دهند، رییس به خاطر این ناهماهنگی هر دو را اخراج خواهد کرد و در غیر این صورت همه به خوبی و خوشی کار خود را ادامه می‌دهند.

ورودی🔗

در سطر اول ورودی دو عدد nn و mm آمده است که به ترتیب نشان‌دهنده تعداد کارهاییست که محمدجواد و مصطفی انجام می‌دهند.

در سطر دوم nn عدد آمده است که نشان‌دهنده نوع کارهاییست که محمدجواد انجام می‌دهد. همه‌ی اعداد متفاوت هستند.

در سطر سوم mm عدد آمده است که نشان‌دهنده نوع کارهاییست که مصطفی انجام می‌دهد. همه‌ی اعداد متفاوت هستند.

نوع کارهایی که محمدجواد و مصطفی انجام می‌دهند اعدادی طبیعی و کوچکتر مساوی یک میلیارد هستند.

1n,m100 000 1 \le n, m \le 100\ 000

خروجی🔗

اگر حضور محمدجواد در شرکت بی‌فایده است، باید "Mohammad Javad" چاپ شود.

اگر حضور مصطفی در شرکت بی‌فایده است، باید "Mostafa" چاپ شود.

اگر هر دو دقیقا یک مجموعه از کارها را انجام می‌دهند، باید "Both" چاپ شود.

اگر هیچ کدام از حالات بالا برقرار نیست، باید "None" چاپ شود.

مثال🔗

ورودی نمونه ۱🔗

2 3
1 2
1 2 190
Plain text

خروجی نمونه ۱🔗

Mohammad Javad
Plain text

ورودی نمونه ۲🔗

3 3
1 2 190
1 2 190
Plain text

خروجی نمونه ۲🔗

Both
Plain text

ورودی نمونه ۳🔗

2 3
2 5
1 2 190
Plain text

خروجی نمونه ۳🔗

None
Plain text

دسته به دسته


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

محمدجواد که پشت‌کار بالایی دارد، مسئول برگزاری جام حذفی برنامه‌نویسی شده است. همانطور که از اسمش پیداست این مسابقات قوانین عجیب و غریبی هم دارند. در این مسابقات 2n2^n تیم شرکت می‌کنند که تیم iiم ، به اندازه‌یpip_i قدرت کدزدن دارد. در هر مرحله از مسابقه محمدجواد تیم‌های حاضر را به دو دسته تقسیم می‌کند که دسته‌ی اول به ترتیب نصفه‌ی اول تیم‌های باقی‌مانده هستند و دسته‌ی دوم نصفه‌ی دوم. سپس محمدجواد به هر دسته پروژه‌ای می‌دهد و تصمیم می‌گیرد که با یک دسته خداحافظی کرده و با دسته‌ی دیگر ادامه دهد و به پرقدرت ترین تیم دسته‌ی از دست رفته به اندازه‌ی قدرتش جایزه دهد. محمدجواد دوست دارد بیشترین جایزه‌ی ممکن را به شرکت کنندگان بدهد. برای همین از شما کمک می‌خواهد که به او بگویید چه مقدار پول باید از سرمایه‌گذار دریافت کند. دقت کنید که محمدجواد به تیم آخر نیز جایزه خواهد داد.

به عنوان مثال اگر ۸ تیم وجود داشته باشد که قدرت هایشان برابر 1 6 1 7 1 8 1 4 باشد، محمد جواد می‌تواند در مرحله‌ی اول با ۴ تیم اول(تیم‌های با شماره ۱ و ۲ و ۳ و ۴) خداحافظی کرده و به اندازه ۸تا به تیم شماره ۳ جایزه دهد سپس با ۲ تیم دسته‌ی دوم (تیم‌های با شماره ۷ و ۸) خداحافظی کرده و ۶تا به تیم شماره‌ ۷ جایزه دهد و در مرحله ی بعد با تیم شماره ۵ خداحافظی کرده و ۷تا به او جایزه بدهد و در انتها به تیم شماره ۶ نیز ۱ی جایزه دهد که در مجموع می‌شود ۸ +‌ ۶ + ۷ + ۱ = ۲۲ او می‌تواند به جای روش بالا به ترتیب با ۴ تیم دوم خداحافظی کرده سپس با تیم سه و چهار و بعد از آن با تیم یک خداحافظی کند. که در این صورت باید به اندازه ۷ +‌ ۸ +‌ ۴ +‌ ۱ = ۲۰ تا جایزه دهد که یعنی روش اول بهتر بود.

ورودی🔗

در سطر اول ورودی nn آمده است که نشان‌دهنده‌ی تعداد مراحل است.

در خط بعدی 2n2^n عدد آمده است که عدد iiم نشان‌دهنده‌ی pip_i است.

1n17 1 \le n \le 17 1pi1 000 000 000 1 \le p_i \le 1\ 000\ 000\ 000

خروجی🔗

خروجی شامل یک عدد است، که نشان‌دهنده‌ی مجموع پولیست که محمدجواد باید هدیه بدهد.

مثال🔗

ورودی نمونه ۱🔗

2
1 2 3 4
Plain text

خروجی نمونه ۱🔗

9
Plain text

ورودی نمونه ۲🔗

3
1 6 1 7 1 8 1 4
Plain text

خروجی نمونه ۲🔗

22
Plain text

ذخیره سازی اطلاعات


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

محمدجواد که پشت‌کار بالایی دارد، تعدادی کلمه در سخنرانی یادداشت کرده است. حال می‌خواهد این کلمات را به هم بچسباند و در یک فایل ذخیره کند. به دلیل این که این سخنرانی برای او بسیار مهم است او می‌خواهد مکان فایل در پوشه‌ای که آن را ذخیره می‌کند در بالاترین جای ممکن باشد. نحوه جایگیری فایل ها در کامپیوتر او به صورت الفبایی است. برای همین او می‌خواهد که رشته‌ی نهایی به صورت الفبایی کوچکترین حالت ممکن را داشته باشد.

اگر ss و tt دو رشته از حروف باشند، که تعداد حروفشان یکسان است و sis_i حرف iام رشته‌ی s , tjt_j حرف jjم رشته‌ی tt را نشان دهد، آنگاه گوییم s از t به صورت الفبایی کوچکتر است اگر برای یک i داشته باشیم si<tis_i < t_i و برای تمام k<ik < i داشته باشیم sk=tks_k = t_k.

ورودی🔗

در سطر اول ورودی nn آمده است که نشان‌دهنده‌ی تعداد کلمات است.

در nn خط بعدی در هر خط یک کلمه آمده است. طول رشته‌ی ii برابر lil_i است. هر رشته از حروف کوچک انگلیسی تشکیل شده‌است.

1n100 1 \le n \le 100 1li20 1 \le l_i \le 20

خروجی🔗

خروجی شامل یک رشته است که نشان‌دهنده‌ی رشته‌ قابل ساختی است که از نظر الفبایی کمینه است.

مثال🔗

ورودی نمونه ۱🔗

3
c
a
b
Plain text

خروجی نمونه ۱🔗

abc
Plain text

محمدجواد با چسباندن کلمه ها به هم می‌تواند این ۶ رشته را بسازد:‌ {cbacba ,cabcab ,bcabca ,bacbac ,acbacb ,abcabc} که از بین آنها رشته abcabc از بقیه از نظر الفبایی کوچکتر است.

ورودی نمونه ۲🔗

7
bat
javo
he
on
aaghe
irshi
bek
Plain text

خروجی نمونه ۲🔗

aaghebatbekheirshijavoon
Plain text