All submissions

Sliding Window Sum

Code

#include <stdio.h>

void sliding_window_sum(int arr[], int n, int k) {
    // Your logic here
    int sum[n-k+1] = {};
    //first window
    // int sum = 0;
    for(int i=0; i<k; i++){
        sum[0] += arr[i];
    }
    printf("%d", sum[0]);
    printf(" ");
    
    //Later windows
    for(int i=1; i<=(n-k); i++){
        sum[i] = sum[i-1] - arr[i-1] + arr[i+k-1];
        printf("%d", sum[i]);
        printf(" ");
    }

}

int main() {
    int n, k, arr[100];
    scanf("%d %d", &n, &k);
    for (int i = 0; i < n; i++) scanf("%d", &arr[i]);

    sliding_window_sum(arr, n, k);
    return 0;
}

Solving Approach

 

 

 

Loading...

Input

5 3 1 2 3 4 5

Expected Output

6 9 12