تبلیغات
الف مثل المپیاد - ترجمه سوالات یوساکو (بخش اول)
در این درگه که گه گه که که و که که شود ناگه/مشو غره به امروزت که از فردا نه ای آگه
درباره وبلاگ

آرشیو

طبقه بندی

آخرین پستها

پیوندها

پیوندهای روزانه

صفحات جانبی

نویسندگان

آمار وبلاگ


.1

Your Ride Is Here

سوال به شما دو رشته از حروف بزرگ الفبا رو می ده که هر کدوم تو یه خطن و طولشون حداکثر 6 !!!
شما باید  این عمل رو انجام بدین:
شماره حرف هر کدوم از حروف رشته رو حساب کنید و بعدش این شماره ها رو در هم ضرب کنید و حاصل این ضرب رو با حاصلضرب اون یکی رشته مقایسه کنین!!!!اگر باقیمانده ی تقسیم هر دوتاشون به 47 یکی بود GO و در غیر این صورت STAY رو چاپ کنین!!!!
مثلا اگر ورودی ها COMETQ و  HVNGAT بودن شما باید GO رو چاپ کنید چون COMETQ=3*15*13*5*20*17=994500 , HVNGAT=8*22*14*7*1*20=344960که باقیمانده هر دوتاشون به 47 برابر 27ه!!!!
نسخه انگلیسی سوال

.2

Greedy Gift Givers

سوال میاد به شما اول یه n می ده و بعدش n تا اسم به شما می ده!!!
بعدش هر بار(برای هر کس یه بار) یه اسم به ما می ده و دوتا عدد A,B
که یعنی فرد با این اسم A واحد پول رو بین B نفر B خط بعدی تقسیم می کنه!!!!
نکته1.اول کار همه صفر واحد پول دارن!
نکته2.اگر مقدار پولی که می خواد تقسیم کنه بر اون تعداده بخشپذیر نباشه مقدار باقیمانده تو جیب خود پخش کننده می مونه!!!
حالا شما باید توی خروجی اول اسم هر کس و مقدار پولی که الآن تو جیبشه رو چاپ کنین!!!!
اسم ها هم باید به همون ترتیبی باشن که ورودی به شما داده!!!
به مثال خود سوال دقت کنید برای درک بهتر مسئله و نحوه ورودی و خروجی!

نسخه انگلیسی سوال

.3

Friday the Thirteenth
قراره یه برنامه بنویسیم که برامون محاسبه کنه در هر ماه روز 13ام چه روزیه؟ اول یه عدد n درورودی میار بعد برنامه ی شما باید محاسبه کنه که از ژانویه ی 1900 تا دسامبر 1900+n-1 چند تا ماه 13امش شنبه بوده چند تا ماه یکشنبه بوده چند تا .....ودر خروجی به ترتیب تعداد شنبه ها بعد یکشنبه ها بعد دو شنبه ها ......بعد جمعه ها رو چاپ کنید یعنی 7 تا عدد در یک خط !

چیزایی که باید بدونید : 1. اول ژانویه ی 1900 دوشنبه بوده

2. سپتامبر آپریل ژون نوامبر 31 روزه و فبریه 28 روزه است به جز سال های کبیسه که 29 روزه می شه

3 . هر سالی که مضرب 4 باشه کبیسه حساب می شه مثلا 1992 =4*498 واسه همین کبیسه است !

4 . مورد بالا در مورد سال هایی که اول قرن اند برقرار نیست مثل 1900 1800 1700 2100 اما در همین قاعده هم مضرب های 400 استثنا اند ( می شه استثنا تو استثنا ) مثلا 2000 کبیسه حساب می شه !

در ورودی سوال فقط یک n هست که از 400 کوچیکتره!

 نسخه انگلیسی سوال

.4

Broken Necklace


یک گردنبند به شما دادند که از مهره هایی به رنگ سفید آبی و قرمزه ! قراره قسمتی از گردن بند رو جدا کنیم که اولا طولش بیشترین مقدار ممکن باشه دوما در این قطعه نه هیچ مهره ی آبی بین دو مهره ی قرمز باشه نه هیچ مهره ی قرمزی بین دو مهره ی آبی ! منظور از بین بودن این نیست که دقیقا سمت چپ و راست مهره ی قرمز آبی باشن ! مهره های سفید هم تاثیری ندارند !

گردن بند در ورودی ابتدا طول تعداد مهره های گردنبند (بین 2 تا 350) و بعد گردنبند به صورت یک رشته از حروف  WسفیدB  آبیR قرمز میاد ! خودتون رشته رو گردنبند فرض کنید ! یعنی مهره ی بعد از آخرین مهره می شه اولین مهره !

در تنها سطر خروجی طول بیشترین قطعه رو چاپ کنید


 نسخه انگلیسی سوال


.5

Milking Cows

سوال چیز خاصی نداره تقریبا!!!!
میاد اول یه n بهتون می ده!!!
بعدش n تا بازه ی زمانی رو بهتون می ده!!!
هر کدوم از این بازه ها نشان دهنده زمان شروع و پایان دوشیدن شیر یک گاو توسط یه کشاورزه!!!
شما باید دو نکته  رو حساب کنید:
1.بیشترین زمانی که در طی اون حداقل یک گاو در حال دوشیده شدنه!!!!
2.(از لحظه ی شروع شیر دوشی تا انتهای اون)بیشترین زمانی که هیچ گاوی در حال دوشیده شدن نیست!!!
به مثال خود سوال هم دقت کنید!!!!!
نکات: n حداکثر 5000!!!
پایان بازه ها حداکثر 1000000!!!

 نسخه انگلیسی سوال

.6

Transformations

این سوال اول میاد یه N  کوچکترمساوی 10  بهمون میده!بعد دوتا مربع N*N رو هم بهمون می ده!
حالا یه چندتا حرکت تعریف کرده:
1. مربع 90 درجه ساعتگرد بچرخه
2. مربع 180 درجه ساعتگرد بچرخه
3. مربع 270 درجه ساعتگرد بچرخه
4.انعکاس:مربع نسبت به خط وسطش قرینه بشه!
5.ترکیب : یعنی اول یه حرکت 4 و بعدش یکی از حرکات 1 تا 3 روش انجام بشه!
6.بدون تغییر
7.جابجایی غیرممکن!
.
حالا شما باید بگید که مربع دوم با کدوم یکی از حرکات بالا از روی مربع اول بدست اوده؟وشماره ی اون تغییر رو به خروجی ببرید!(یا اگر چنین کاری غیر ممکنه عدد 7 رو ببرید به خروجی)
اگر با دوتا از حرکات این کار ممکن بود اون عددی رو به خروجی ببرید که کوچیکتره!

 نسخه انگلیسی سوال


.7

Name That Number


فرض کنید دارید اسمس می دید. هر دکمه ای یه عدد و یه سری حرف داره ! فرض کنید دکمه ها اینجوری باشه:
2ABC   3DEF   4GHI    5JKL   6MNO   7PRS   8TUV   9WXY
توجه کنید که Q , Z نداره .
حالا ما یه لیست از اسامی داریم که توی فایلی به نام dict.txt ذخیره شدن و همشون هم از حروف بزرگ ان! حالا به شما یه عدد چند رقمی می ده! ارقام به ترتیب اعدادیه که اگه یه اسمو قرار بود اسمس کنیم اون کلیدا رو به ترتیب فشار می دادیم. ازتون می خواد عددو بگیرید ببینید تو لیست اسامی چند تاشون با عدده مطابقت داره اونا رو چاپ کنید.اگه هیچی مطابقت نداره NONE چاپ کنید. تعداد کلمات کمتر از 5000 تاست و تعداد ارقام عددمون نهایتن 12 رقمه

نسخه ی انگلیسی سوال:

.8

Palindrome Squares


یه عدد آینه ایه اگه از چپ به راست ارقامشو بخونیم فرقی با راست به چپش نکنه. از ورودی یه عدد 2<= n و 20>= n رو بخونید و بعد اعداد بین 1 تا 300 رو به ترتیب به توان دو برسونید و بعد تبدیل به توان دوی اون اعداد توی مبنای n بکنید. اگه توی اون مبنا آینه ای بود اول خود عدد توی مبنای n و بعد مجذورشو توی مبنای n چاپ کنید.
 از اونجا که ما رقمی با ارزش بیشتر از 9 نداریم برای نشون دادن اعداد توی مبنای بیشتر از 10 به ترتیب از حروف بزرگ انگلیسی استفاده کنید. مثلا 10=A
B=11 و...

نسخه ی انگلیسی سوال


.9

Dual Palindromes


تعریف عدد آینه ای رو از سوال بالا بخونید. حالا برنامه ای بنویسید که دو عدد n و s رو از ورودی بخونه، بعد همه ی اعداد بزرگتر از s رو در نظر بگیره. به ازای هر کدوم اعداشونو توی مبناهای 2 و 3و ....و10 در نظر بگیره . هر کدوم از این اعداد بزرگترا ز s که حد اقل توی دو تا از این مبناها آینه ای بود رو نگه داره . حالا n تای اول این اعدادی رو که نگه داشته بنویسه.   s>0 و s<10000 و  n <15
در ضمن اعدادو توی خروجی توی مبنای 10 چاپ کنید.جوابا هم از int بیشتر نیست.

نسخه ی انگلیسی سوال



.10

Mixing Milk

یه کارخونه هست به نام Merry Milk Makers هر روز n لیتر شیر نیاز داره و این n لیتر رو باید از m تا کشاورز بخره!!!!
هر کشاورز هر لیتر شیر رو Pi سنت می فروشه و حداکثر Ai لیتر شیر می تونه بفروشه!!!!
ورودی به شما اول n بعدش m و بعد از اون توی m خط اول Pi بعدش Ai رو برای هر کشاورز می ده شما باید کمترین هزینه رو برای این کارخونه برای خرید شیر مورد نیازش محاسبه کنین و به خروجی ببرین!!!!

نسخه انگلیسی سوال


.11

Barn Repair


جان کشاورز(!)چندتا اصطبل داره و توشون گاو نگه می داره!!!اصطبلا هم توی یه خط پشت سر هم دیگه ان و شماره گذاری شدن!!!!توی بعضی از اصطبلا گاو هست و توی بعضی هاشون نیست!!!!یه شب که برف و بوران بوده باد میاد و در همه ی اصطبلا رو می کنه!!!!:-"
حالا جان می خواد جلوی حداقل همه اصطبلایی که توشون گاو هست تخته بذاره که گاوا فرار نکنن!!!!(مشکلی نیست جلوی اصطبلای خالی هم تخته گذاشته بشه یا نه مهم اینه که جلوی اصطبلای پر حتما گذاشته بشه!!!)
هر تخته می تونه چندتا اصطبل پشت سر هم رو ببنده و طولش برابر تعداد اصطبلایی می شه که بستتشون!!!!
کسی که به جان تخته می فروشه تعداد معدودی تخته رو می تونه به جان بفروشه ولی طول این تخته ها به دلخواه جانه!!!!حالا شما باید می نیموم طول ممکن رو حساب کنید!!!!
ورودی به شما اول حداکثر تعداد تخته هایی رو می ده که می تونید استفده کنید=M
بعد تعداد اصطبلا=S
بعد هم تعداد اصطبلایی که گاو دارن=C
و توی C خط بعدی شماره اصطبلای پر رو بهتون می ده!!!
و شما هم باید یک عدد رو به عنوان مینیموم طول به خروجی ببرین!!!!!(به مثال سوال دقت کنید!!!)

نسخه انگلیسی سوال

.12

Calf Flac
این سوال بهتون یه رشته ی حداکثر 20،000 کاراکتری می ده و شما باید بزرگترین زیر رشته ی پالیندروم(
آیینه ای)(رشته ای که از دو طرف یکسان خونده بشه)ی متوالی رو پیدا کنید توش!!!تضمین شده که اندازه این زیر رشته حداکثر 2،000 کاراکتره!!!!
نکته:توی بررسی پالیندروم بودن یا نبودن یک رشته علامات و بزرگی و کوچکی حروف تاثیر ندارن مثلا رشته ی زیر یک پالیندروم 11 حرفیه!!(مثال خود سوال)
Madam, I'm Adam

توی ورودی به شما رشته ی اصلی داده می شه و توی هر خط حداکثر 80 حرف نوشته می شه!!!!
شما باید توی خروجی اول اندازه بزرگترین پالیندروم(بدون احتساب علامات)رو چاپ کنید و توی خط بعد عینا خود زیر رشته رو به همراه علامات و مایتعلق به چاپ کنید!!!!
اگر چندتا جواب وجود داشت(چندتا زیر رشته ی پالیندروم با اندازه  حداکثر وجود داشت)اونی رو چاپ کنید که زود تر از بقیه توی متن اومده!!!!
به مثال خود سوال حتما توجه کنین!!!!!!;)

نسخه انگلیسی سوال


.13

Prime Cryptarithm

چیز خاصی نداره سوال تقریبا!!!!:دی
یه حاصل ضرب به این شکل رو شما در اختیار دارین!!!!

جای ستاره ها باید عدد قرار بگیره و عدد ها با صفر شروع نمی شن!!!!
شیوه ضرب هم که مشخصه دیگه؟؟؟توی خط اول و دوم عوامل ضربن!!!!خط سوم حاصل ضرب عامل اول در رقم اول عامل دومه!!!خط چهارم حاصل ضرب عامل اول در رقم دوم عامل دوم ضربدر 10 !!!!(که البته صفرش حساب نمی شه جزو ستاره ها)خط آخر هم حاصل جمع خط 3 و 4!!!!
حالا اول به شما یه n می ده و بعدش n تا رقم و شما باید توی خروجی تعداد حالاتی که میشه با این n تا رقم این ستاره ها رو پرکرد رو ببرین!!!!(اگه خوب متوجه نشدین به مثال خود سوال دقت کنین!!!!حتما متوجه می شین!!!!;) )

نسخه انگلیسی سوال

.14

Packing Rectangles

بهتون طول و عرض 4 تا مستطیلو میده! میگه اینا رو میتونین شبیه این شکلایی که بالای صفحه کشیده کنار هم بچینین
کوچکترین مستطیل (از نظر مساحت) رو پیدا کنین که  یکی از این شکلا توش محاط بشه!
ورودی: 4 خط میده که تو هر خط 2 تا عدد میده یکیش طول مستطیل i م و یکیش عرضشه

خروجی: خط اول خروجی مساحت مستطیلی رو مینویسین که اون ویژگی رو داره!
خط های بعدی هر کدوم 2 تا عدد مینویسین که یکیشون طول و یکیشون عرض مستطیلیه که اون ویژگی رو داره!
ینی اگه چند تا مستطیل بود با مساحت کمینه که یک شکل توش محاط میشد، هر کدومشو تو یک خط مینویسین!


نسخه انگلیسی سوال

.15

The Clocks

9 تا ساعت با نام های Aتا I بهتون میده! می خواد طوری این ساعتا رو حرکت بدین که همه شون 12 بشن!
با دوران دادن ساعت k م اون ساعت 90 درجه ساعت گرد حرکت میکنه!
(ینی 12 میشه 3! 3 میشه 6 ! 6 میشه 9 و 9 میشه 12)
در مجموع 9 تا حرکت داریم!
هر حرکت اسم چند تا ساعتو میگه! که اگه اون حرکتو انجام بدیم همشون 90 درجه دوران پیدا میکنن!
مثلن حرکت 1 ساعت های A, B, D, E رو دوران میده!
شما باید بگین چه حرکت هایی بکنیم که زودتر به حالتی که همه 12 باشن برسیم
ینی حرکت های بهینه رو پیدا کنین!
ورودی : 3 خط میده! تو هر خط 3 تا عدد میده! که هر کدوم حالت اولیه ی یکی از ساعتا رو مشخص میکنه
خروجی: یک خط داره که از یه سری عدد تشکیل شده که میگه کدوم حرکتو انجام بده!

نسخه انگلیسی سوال



.16


Arithmetic Progressions

این سوال ازتون میخواد همه ی دنباله های حسابی به طول n رو بدست بیارین که همه ی جمله هاشو میشه به صورت p*p+q*q  نوشت! (p , q>0 و p , q<=m )

مثلن عدد 5 رو میشه به صورت 1*1+2*2 نوشت! اما عدد 7 رو نمیشه به صورت حاصل جمع مربع های 2 عدد نوشت!

ورودی:خط اول ورودی n و خط دوم ورودی m رو بهتون میده!
خروجی: اگر هیچ دنباله ی حسابی ای با شرایط بالا وجود نداشت 'NONE' رو چاپ میکنین!
در غیر اینصورت یک تعداد خط چاپ میکنین (به تعداد دنباله های موجود با شرایط)
هر خط شامل 2 عدد هست! عدد اول اولین عدد دنباله و عدد دوم قدر نسبت (تفاوتهر 2 عدد متوای در دنباله) هست!
مثلن اگه دنباله ی 2، 5، 8، 13... رو پیدا کردین! باید چاپ کنین:  3 2

نسخه انگلیسی سوال

.17

Mother's Milk

کشاورز جان 3 ظرف داره که به ترتیب A, B, C لیتر شیر توشون جا میشه!
در ابتدا ظرف A , B خالی هستن و ظرف C شیر داره!
در هر حرکت میتونیم از یک ظرف به ظرف دیگه اونقدر شیر بریزیم تا وقتی که یکی از ظرف ها خالی و یا یکی از ظرف ها پر بشه (ینی وسطش نمیتونیم بمونیم! حتمن تا وقتی که یکی خالی و یا یکی پر نشه باید بریزیم!)
فرض کنین که ما میخوایم یک مقدار شیر تو ظرف C بریزیم و بفروشیم! و می خوایم که ظرف Aدر پایان کار خالی باشه!
سوال اینه که با این حرکتا، ظرف C میتونه به چه حالتایی برسه؟ (تاکید می کنم ظرف A باید خالی باشه در پایان!)
مثلن اگه A, B, C به ترتیب 10، 5 ، و2 لیتر جا داشته باشن! اول کار ظرف 10 لیتری پر و بقیه خالین! پس این خودش 1 حالت واسه C هست!
1 حالت دیگه اینه که 5 لیتر بریزیم تو B، حالا ظرف C 5 لیتر داره و A هم خالیه! اینم 1 حالت دیگس!
1 حالت اینه که 2 لیتر بریزیم تو A و بعد اون 2 لیتر رو خالی کنیم تو B! حالا دوباره A خالیه و C 8 لیتر داره! همین طوری میشه 5،6،7،8،9،10 رو ساخت!

ورودی: 3 تا عدد میده! به ترتیب A, B , C
خروجی: 1 خط شامل یک تعداد عدد! که هر عدد مقدار شیری که میشه با این حرکتا بهش رسید (تو ظرف C)

نسخه انگلیسی سوال

.18

Number Triangles

یک مثلث عددی این طوریه که از R خط تشکیل میشه! خط iم iتا عدد داره که ارزش اون خونه رو نشون میده!
شکل مثلث رو تو سوال کشیده که چجوری ساخته میشه! (سطر ها زیر هم قرار میگیرن!)
اول کار تو بالاترین سطر (که 1 خونه داره) قرار داریم! در هر مرحله 1 سطر پایین میایم و میریم به یکی از 2 خونه ی پایین-راست و یا پایین-چپ خونه ای که توشیم!
سوال از شما می خواد که مسیری از خونه ی سطر اول به یکی از خونه های سطر پایین پیدا کنین که مجموع عدد های داخل اون مسیر ماکزیمم بشه!
ورودی: خط اول R (تعداد سطر های مثلث) رو میده!
در R خط بعدی هر خط i عدد میده .که وزن هر خونه رو نشون میده!

خروجی: در تنها سطر خروجی ماکزیمم مجموعی که میتونیم از حرکت از خونه ی بالای مثلث به یکی از خونه های سطر پایین بدست بیاریم!

نسخه انگلیسی سوال

.19

Prime Palindromes

یک عدد آینه ای است اگر از هر دو طرف به یک صورت خوانده شود!
یک عدد  اول-آینه ای است اگر هم اول باشد و هم آینه ای!
همه ی اعداد اول- آینه ای در بازه ی 2 عدد a , b را بدست بیارین!
ورودی شامل 2 عدد a , b هست!
خروجی: لیست اعداد اول- آینه ای بین a, b (خود aو b هم میتونن باشن!) هر عدد در یک خط!

نسخه انگلیسی سوال

.20

Superprime Rib

یک عدد سوپر-اول k رقمیست است اگر به ازای هر i ، i رقم اول آن عدد اول باشد!( 0<i  و i<=k )
همه ی اعداد سوپر-اول k رقمی را بدست بیارین.
ورودی: در تنها خط ورودی k رو می ده
خروجی: یک لیست شامل همه ی اعداد سوپر-اول k رقمی باید بدین. هر عدد تو یک خط

نسخه انگلیسی سوال


.21

Checker Challenge

تعداد راه های چیدن n تا مهره در یک جدول n * n به طوری که در  هر  سطر و ستون دقیقا یک مهره و در هر قطر حداکثر یک مهره قرار بگیره رو میخوایم به صورت ساده تر پیدا  کردن تعداد راه های چیدن n تا وزیر داخل یک جدول n * n به طوریکه هیچکدوم همدیگرو تهدید نکنن.

برای نشون دادن جدول و مهره های داخلش ازیک جدول n * 2 استفاده میکنیم که در سطر اولش شماره سطر ها اومده و در سطر دوم شمارهستون ها اومده به این شکل که  دو خانه ستون i ام نشان دهنده مکان مهره i ام هستش و مهره ها به ترتیب سطری داخل جدول اومدن

 

ورودی شامل یه خط که داخلش n رو داده به طوریکه n بین 6 تا 13 هستش.

داخل خروجی در سه خط اول ̜   اولین سه روش چیدن مهره ها میاد و در خط چهارم تعداد روش ها.

نسخه انگلیسی سوال