سجاد یک لیست nn تایی از اعداد دارد و در گروه‌های مختلف آن را تقسیم‌بندی می‌کند؛ به این صورت که mm عضو اول را در یگ گروه قرار می‌دهد، mm عضو بعدی را در یک گروه و به همین ترتیب اعضا را گروه بندی می‌کند (دقت کنید که گروه آخر ممکن است کمتر از mm عضو داشته باشد).

سجاد از روی این اعداد، یک لیست جدید می‌سازد که عضو iiام آن، جمع اعضای گروه iiام باشد.

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

مثال محاسبه ارزش لیست

به طور مثال اگر سجاد لیست زیر را داشته باشد و مقدار mm برابر با ۳ باشد:

[1,2,3,4,5,6,7,8][1, 2, 3, 4, 5, 6, 7, 8]

آنگاه لیست جدید به صورت زیر می‌شود:

[6,15,15][6, 15, 15]

بعد از آن سجاد اعداد لیست را به صورت شطرنجی جمع می‌کند و ارزش لیست برابر با عبارت زیر می‌شود:

615+15=66 - 15 + 15 = 6

بنابراین عدد نهایی سجاد برابر با ۶ می‌شود. هم‌چنین اگر مقدار mm در این سوال برابر با یک بود ارزش نهایی برابر با عبارت زیر می‌شود:

12+34+56+78=41 - 2 + 3 - 4 + 5 - 6 + 7 - 8 = -4

در این سوال شما باید تابع ‍‍calculator(n, m, li) را پیاده‌سازی کنید که به ترتیب nn (تعداد اعضای لیست)، و mm (تعداد اعضای هر گروه) و خود لیست را ورودی بگیرد و ارزش نهایی لیست را بر‌گرداند.

def calculator(n, m, li):
    pass
Python
solution.py

نمونه ۱

>>> calculator(8, 3, [1, 2, 3, 4, 5, 6, 7, 8])
6
Python
terminal

نمونه ۲

>>> calculator(8, 1, [1, 2, 3, 4, 5, 6, 7, 8])
-4
Python
terminal

نکات

  • می‌توانید فایل اولیه این سوال را از این لینک دریافت کنید.
  • تابع شما نباید مقداری را چاپ کند، بلکه باید مقادیر مورد نظر را بازگرداند.

نحوه ارسال

شما باید تابع calculator موجود در فایل solution.py را تکمیل و سپس این فایل را ارسال کنید.


ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.