Menu
CoddyTech

Maximum Sum Subarray of Size K

لديك مصفوفة من الأعداد الصحيحة nums وطول نافذة k. انظر إلى كل مجموعة متتالية تتكوّن من k عناصر متجاورة تمامًا، وأعِد أكبر مجموع بينها. قد تكون القيم سالبة، لذا قد تكون الإجابة سالبة أيضًا.

الدالة

maxSumSubarray(nums: integer-array, k: integer) → integer
numsinteger-array
مصفوفة الأعداد الصحيحة
kinteger
عدد العناصر المجاورة التي تحتويها كل نافذة
تُرجعinteger
أكبر مجموع لأي k عناصر متتالية

القيود

  • 1 ≤ k ≤ nums.length ≤ 104
  • -104 ≤ nums[i] ≤ 104

أمثلة

المدخلات
nums = [4, -1, 3, 7, -2, 5, 1]k = 3
المخرجات
10
الشرح
مجاميع النوافذ الخمس ذات الطول 3 هي 6 و9 و8 و10 و4. أكبرها هو 7 + (-2) + 5 = 10.
challenge icon

سؤال إضافي

هل يمكنك أيضًا إرجاع موضع بداية أفضل نافذة، واختيار النافذة الواقعة إلى أقصى اليسار عند التعادل بين عدة نوافذ؟

إعادة ضبط الشيفرة
def maxSumSubarray(nums, k):
    # اكتب الكود هنا

اختبار #1

اختبار #2

اختبار #3

الوسائط

nums = [4, -1, 3, 7, -2, 5, 1]
k = 3

الإخراج المتوقع

10