DEV Community

Cover image for Day 93 of 100 days dsa coding challenge
Manasi Patil
Manasi Patil

Posted on

Day 93 of 100 days dsa coding challenge

Taking on a new challenge: solving GeeksforGeeks POTD daily and sharing my solutions! πŸ’»πŸ”₯
The goal: sharpen problem-solving skills, level up coding, and learn something new every day. Follow my journey! πŸš€

100DaysOfCode #CodingChallenge #ProblemSolving #GeeksforGeeks #DeveloperJourney

Problem:

https://www.geeksforgeeks.org/problems/max-sum-subarray-of-size-k5313/1

Max Sum Subarray of size K

Difficulty: Easy Accuracy: 49.6%

Given an array of integers arr[] and a number k. Return the maximum sum of a subarray of size k.
Note: A subarray is a contiguous part of any given array.

Examples:
Input: arr[] = [100, 200, 300, 400], k = 2
Output: 700
Explanation: arr2 + arr3 = 700, which is maximum.
Input: arr[] = [1, 4, 2, 10, 23, 3, 1, 0, 20], k = 4
Output: 39
Explanation: arr1 + arr2 + arr3 + arr4 = 39, which is maximum.

Input: arr[] = [100, 200, 300, 400], k = 1
Output: 400
Explanation: arr3 = 400, which is maximum.
Constraints:
1 ≀ arr.size() ≀ 106
1 ≀ arr[i] ≀ 106
1 ≀ k ≀ arr.size()

Solution:
class Solution:
def maxSubarraySum(self, arr, k):
n = len(arr)
curr = sum(arr[:k])
ans = curr
for i in range(k, n):
curr += arr[i] - arr[i-k]
ans = max(ans, curr)
return ans

Top comments (0)