حل تمرین چیدمان کوئرا با پایتون
در این نوشته به روش حل یکی از سوالات پیاده سازی برنامه نویسی وبسایت کوئرا میپردازیم.
حل تمرین چیدمان کوئرا با پایتون
عمو که فردی بسیار پولپرست است، به چیدن سکههایش روی هم علاقهمند است. عمو سکههایش را روی یک خط بصورت n ستون از سکه با ارتفاع برابر چیده است. عمو هرشب قبل از خواب ستونهای سکهاش را برانداز میکند. او دیشب قبل از خواب متوجهشد که چیدمان سکهها بههم خورده است. عمو پس از تحقیق متوجه شد که کریم، یک پسربچهی 5 ساله که به جابجایی سکهها علاقهمند است، تعدادی سکه از هر ستون به ستونهای دیگر منتقل کرده است. حال عمو میخواهد بار دیگر ستونهایش را هم ارتفاع کند. او بدلیل خواب آلودگی، در هر دقیقه میتواند یک سکه از روی یکی از ستونها برداشته و روی ستون دیگری بگذارد. با داشتن ارتفاع سکهها بگویید که این مرتب سازی حداقل چند دقیقه از او وقت خواهد گرفت.
ورودی
سطر اول ورودی شامل عدد است که نمایانگر تعداد ستونهای سکهی عمو است. در سطر iم از هریک از n سطر بعدی یک عدد طبیعی حداقل 0 و حداکثر 104 آمده است که ارتفاع ستونها را نشان میدهد. تضمین میشود که عمو میتواند با حرکت گفتهشده همه ستونها را هم ارتفاع کند.
خروجی
در تنها سطر خروجی یک عدد چاپ کنید که برابر کمینه دقایقی هست که عمو میتواند در آن ستونهایش را هم ارتفاع کند.
مثال
ورودی نمونه 1
4 1 2 3 6
خروجی نمونه 1
3
عمو میتواند یک سکه از ستون آخر به ستون دوم ببرد و 2 سکه از ستون آخر به ستون اول تا ارتفاع همهی ستونها برابر 3 شود.
کد پایتون سوال تمرین چیدمان
n = int(input()) heights = [int(input()) for _ in range(n)] avg_height = sum(heights) // n num_moves = 0 for height in heights: num_moves += abs(avg_height - height) print(num_moves // 2)
منبع سوال: کوئرا
اگر نیاز به حل تمرینهای دیگری از کوئرا دارید در بخش نظرات همین نوشته برای ما بنویسید.
ارسال پاسخ