حل تمرین عدالت یا برابری کوئرا با پایتون
در این نوشته به روش حل یکی از سوالات برنامه نویسی وبسایت کوئرا میپردازیم.
حل تمرین عدالت یا برابری کوئرا با پایتون
برای دیدن یک بازی فوتبال n نفر پشت دیوار استادیوم صف کشیدهاند. ارتفاع قد نفر iام در این صف hi است. برای اینکه همهی این افراد بتوانند نمای زمین بازی را بهتر ببینند، میخواهیم تعدادی جعبه زیر پای این افراد قرار دهیم تا ارتفاعی که روی آن قرار میگیرند بیشتر شود. هر جعبه باعث میشود که ارتفاع قد یک نفر 1 واحد افزایش پیدا کند. زمانی میگوییم عدالت برقرار شده که ارتفاعی که هر دو نفر دارند بازی را تماشا میکنند حداکثر واحد فرق کنند. از شما میخواهیم برنامهای بنویسید که کمترین تعداد جعبه را مشخص کند که با کمک آن میتوانیم عدالت را برقرار کنیم.
ورودی
در سطر اول ورودی، دو عدد صحیح و مثبت n و d که با یک فاصله از هم جدا شدهاند، آمده است.
![]()
در n سطر بعدی، اعداد صحیح h1,h2,…,hn که با یک فاصله از هم جدا شدهاند آمده است.
![]()
خروجی
در تنها سطر خروجی، کمترین تعداد جعبه لازم برای برقراری عدالت را چاپ کنید.
مثال
ورودی نمونه 1
3 1 1 2 8
خروجی نمونه 1
11
ورودی نمونه 2
4 0 1 5 3 6
خروجی نمونه 2
9
ورودی نمونه 3
1 3 5
خروجی نمونه 3
0
کد پایتون سوال تمرین عدالت یا برابری
n, d = map(int, input().split())
h = list(map(int, input().split()))
h.sort()
tallest = h[-1]
ans = 0
for i in range(n - 1):
if tallest - h[i] > d:
ans += tallest - h[i] - d
print(ans)
منبع سوال: کوئرا
اگر نیاز به حل تمرینهای دیگری از کوئرا دارید در بخش نظرات همین نوشته برای ما بنویسید.



















بعضی وقتها سادهترین راهها بهترینن
بله بسیار این موضوع مهم است که چیزهارو برای خودتون پیچیده نکنید.
برام تمرین سختی بود تازه شروع کردم
خوشحالیم این نوشته به شما کمک کرده است. موفق باشید.
پایتون خیلی کد کوتاه میکنه
بله زبان برنامه نویسی پایتون یک زبان بسیار ساده برای یادگیری برنامه نویسی است.
مرسی بابت حل رایگانش
سپاس از نظرتون. موفق باشید.
سطح این سوال به نظر شما چیه؟
سطح این سوال ساده است.