یک قورباغه در چاهی به عمق متر گیر کرده است. او روزها تلاش میکند و متر از دیوار بالا میرود و شبها که میخوابد متر به سمت پایین سر میخورد.
اولین لحظهای که ارتفاع او از بیشتر یا مساوی شود، از چاه خارج میشود. از شما میخواهیم بررسی کنید حداقل چند روز طول میکشد تا قورباغه از چاه خارج شود.
برای بهتر متوجه شدن خواستهی سوال به قسمت مثالها مراجعه کنید.
در سطر اول ورودی، عدد صحیح و مثبت آمده که تعداد تستها را نشان میدهد.
در سطر بعدی در هر سطر سه عدد ، و آمده است.
در سطر به ترتیب شمارهی روزی که قورباغه از چاه خارج شده را چاپ کنید.
در تست اول و دوم حرکت قورباغه به صورت زیر است:
در تست سوم در روز اول قورباغه تا ارتفاع بالا میرود و از چاه خارج میشود.
نیازی نیست چک کنید شرایط گفته شده در ورودی برقرار است یا نه. توضیحات محدودیتها فقط برای آگاهی شما دربارهی تستها و محدودیتهای مسئله است و قطعاً در ورودیهای داده شده به برنامهی شما رعایت میشوند. پس نیازی نیست بنویسید:
شما میتوانید لابهلای دریافت ورودی، خروجی دهید. پس نیازی نیست ابتدا همهی ورودیها را دریافت کنید و در نهایت همهی خروجیها را چاپ کنید. مخصوصاً برای سوالاتی که باید به چندین سوال پاسخ دهید، میتوانید دو قسمت ورودی و خروجی را کاملاً مستقل در نظر بگیرید و مطمئن باشید تداخلی پیش نمیآید.
لطفاً از چاپ کردن موارد اضافه مثل please enter a number
برای دریافت ورودی پرهیز کنید. برای مثال در زبان پایتون نباید بنویسید:
برای زبانهایی مثل جاوا نباید در بالای کد شما آدرس پکیج داده شود. برای مثال در بالای کد خود نباید بنویسید:
Scanner
برای دریافت ورودی
در زبان جاوا، باید فقط یک شئ از جنس Scanner
تعریف کنید و همهی ورودیها را با آن دریافت کنید.
برای آشنایی بیشتر برای نحوهی دریافت ورودی و چاپ کردن خروجی این لینک را مطالعه کنید.
کارکنان کوئرا میخواهند به یک سینما که گنجایش نفر را دارد، بروند. مشکل این است که برای هر کارمند کوئرا که به سینما برود، او باید حتماً به همراه تمام دوستانش برود.
اگر کارمند ام کوئرا دوست داشته باشد (به جز خودش)، حداکثر چند نفر از اعضای کوئرا میتوانند همزمان به سینما بروند؟
در سطر اول ورودی، دو عدد طبیعی و که به ترتیب تعداد کارکنان کوئرا و گنجایش سینما را نشان میدهند، داده میشود.
در سطر بعدی عدد صحیح داده میشود که عدد ام تعداد دوستان کارمند ام کوئرا است.
در تنها سطر خروجی حداکثر تعداد کارمندان کوئرا که میتوانند با هم به سینما بروند را چاپ کنید.
اگر همهی ۵ کارمند کوئرا با دوستانشان بیایند، ۱۵ نفر میشوند ولی ظرفیت سینما ۱۰ نفر است. اما اگر کارمند ۱ و دوستانش نیایند دقیقاً ۱۰ نفر میشوند. بنابراین پاسخ مسئله ۴ یعنی تعداد کارمندانی که به سینما میآیند، است.
مدتی است که امین خیلی پرمشغله شده است. به همین دلیل کار همه پیش او گیر است و از امین درخواست کردهاند که شمارهتلفن خودش را به آنها بدهد.
امین نمیخواهد کار آنها را راحت کند تا با تماسهایشان کار او را بیشتر کنند. به همین دلیل تصمیم گرفتهاست شمارهتلفن خود را به بخش های به طول ۲ یا ۳ ، تکه تکه (افراز) کند و هر تکه را به یک نفر بدهد. هر تکه باید با یک عدد ناصفر شروع شود.
به ازای هر شمارهی امین به او بگویید آیا اینکار امکان پذیر است یا نه و در صورت امکان پذیر بودن یک روش ارائه کنید.
برای بهتر متوجه شدن خواستهی سوال به مثالها مراجعه کنید.
در سطر اول ورودی، عدد طبیعی داده میشود که نشانگر تعداد شمارهتلفنهای امین است.
در سطر بعدی اطلاعات شمارهتلفنها آمده است. به این شکل که در سطر عدد به عنوان طول شماره تلفن و در سطر بعدی آن، رشته که از ارقام 0
تا 9
تشکیل شده و بیانگر شمارهتلفن ام امین است داده میشود.
مجموع طول تمام شماره تلفنها حداکثر است.
پاسخ شما باید شامل خط باشد. در خط ام باید YES
چاپ کنید، اگر امین میتواند شمارهتلفن مورد نظر را به تکههای درستی افراز کند. در این حالت باید در سطر بعدی عدد که نشان دهندهی تعداد تکهها است را چاپ کنید و در سطر بعدی در هر سطر تکههای شمارهی تلفن را به ترتیب چاپ کنید. اگر چند روش صحیح برای تکه کردن وجود دارد یکی را به دلخواه چاپ کنید.
و در صورتی که هیچ راهی وجود ندارد که امین بتواند شمارهتلفن مورد نظر را به تکههای درستی افراز کند NO
چاپ کنید.
12345
است و میتوانیم آن را به دو قسمت 12
و 345
تقسیم کنیم. (توجه کنید تقسیم 12
و 345
هم درست است.)83
است و خودش یک قسمت است. (توجه کنید تقسیم 8
و 3
درست نیست چون اندازهی قسمتها باید ۲ یا ۳ باشد.)4
است و یک شمارهی یک رقمی است پس نمیتوانیم آن را به بخشهای ۲ یا ۳ رقمی تقسیم کنیم. 09999
است و هر طوری که قسمت کنیم بخش اول با صفر شروع میشود پس این کار شدنی نیست.1023
است و میتوانیم آن را به دو قسمت 10
و 23
تقسیم کنیم.1203
است و نمیتوانیم آن را به دو قسمت ۲ یا ۳ رقمی تقسیم کنیم که هیچ بخشی از آن با صفر شروع نشود. 11203
است و میتوانیم آن را به دو قسمت 11
و 203
تقسیم کنیم. (توجه کنید تقسیم 112
و 03
درست نیست چون بخش دوم با صفر شروع میشود.)یک مهرهی اسب در خانهی مرکزی یک جدول که از هر طرف نامتناهی است، قرار دارد. این مهره یک خانه را به عنوان مقصد خود انتخاب کرده است و میخواهد به سریعترین روش ممکن به آن خانه برسد. شما باید این کمترین تعداد حرکت ممکن را پیدا کنید.
به طور دقیقتر، در ابتدا اسب در خانهی جدول قرار دارد شما باید حداقل تعداد حرکت مورد نیاز برای رفتن اسب به خانهی را پیدا کنید.
مهرهی اسب در هر حرکت میتواند در یکی از جهتهای عمودی یا افقی دو خانه به پیش برود و در جهت دیگر یک خانه به جلو برود. این هشت خانه در شکل زیر با رنگ قرمز مشخص شدهاند.
در سطر اول ورودی، عدد طبیعی داده میشود.
در سطر ام از سطر بعدی، دو عدد و آمده است.
پاسخ شما باید شامل خط باشد. در خط ام باید حداقل حرکت مورد نیاز اسب برای رسیدن به با شروع از را چاپ کنید.
در یک کشور شهر وجود دارد. شهرها با اعداد ۱ تا شمارهگذاری شدهاند. بین این شهرها جاده دو طرفه وجود دارد. هر جاده دقیقاً دو شهر را بهم وصل میکند. برای هر جاده میدانیم محدودیت ارتفاع ورود عبور کامیونها چقدر است. اگر این محدودیت عدد باشد یعنی کامیونهای با ارتفاع بیشتر از اجازهی ورود به این جاده را ندارند.
از شما راننده کامیون سوال میپرسند. رانندهی ام میخواهد از شهر شمارهی به شهر شمارهی برود و ارتفاع بار کامیون آن است، آیا مسیری (نه لزوماً کوتاهترین) برای این سفر وجود دارد یا نه؟
در سطر اول ورودی، دو عدد صحیح و مثبت و آمده که تعداد شهرها و جادهها را نشان میدهد.
در سطر بعدی، در سطر ام سه عدد و و میآید که نشان دهندهی وجود یک جاده بین شهر و با محدودیت ارتفاع حداکثر است.
در سطر بعدی عدد صحیح و مثبت آمده که تعداد راننده کامیونها را نشان میدهد.
در سطر بعدی، در سطر ام سه عدد و و میآید که یعنی این راننده میخواهد از شهر شمارهی به شهر شمارهی برود و ارتفاع بار کامیون آن است.
در سطر، در صورتی که انجام این سفر برای راننده شدنی است YES
و در غیر این صورت NO
چاپ کنید.
شکل بالا وضعیت شهرها و جادهها را نشان میدهد.
YES
است.NO
است. YES
است.NO
است.یک زنجیر مانند شکل زیر داریم:
این زنجیر دو حلقه جدا از هم به ارزش و تومان دارد که با زنجیر کوچکتر و دو به دو جدا از هم به یکدیگر متصل شدهاند. ارزش حلقهی کوچکها به ترتیب تومان است.
میخواهیم مقدارهای و و را طوری تعیین کنیم که بتوانیم همهی مبالغ تا را پرداخت کنیم.
برای پرداخت اگر تصمیم بگیریم تعدادی از حلقهها را بدهیم فرض کنید بقیهی حلقهها ناپدید میشوند و ما میتوانیم حلقههای باقیمانده را پرداخت کنیم.
همچنین میخواهیم حلقههایی که به یک نفر میدهیم باید همبند باشد یعنی به دو قسمت تبدیل نشود و حلقهها تو در توی هم باشند. فرض کنید شکستن یا داخل هم کردن حلقهها ممکن نیست.
از شما میخوهیم طوری عدد گذاری کنید که حداکثر مبلغ ممکن را پرداخت کنیم.
برای بهتر فهمیدن خواستهی سوال، مثالها را ببیند.
در تنها سطر ورودی، عدد صحیح و مثبت داده میشود.
در سطر اول خروجی، دو مقدار طبیعی و را چاپ کنید. در سطر دوم خروجی، عدد طبیعی با فاصله از هم چاپ کنید.
اگر چند جواب مختلف وجود دارد یکی را به دلخواه چاپ کنید.
اگر عددگذاری را مانند شکل زیر انجام دهیم همهی مبالغ از ۱ تا ۱۳ تومان قابل پرداخت با تعدادی حلقهی متصل بههم است.
همچنین ۱۳ بیشترین عددی است که میتوانیم پرداخت کنیم.
توجه کنید برای پرداخت ۳ تومان نمیتوانستیم حلقهی ۱ و ۲ را بدهیم چون دو تکه میشود و شرط همبندی را ندارد.