#include <stdio.h> int window_sum(int arr[], int start, int end) { int sum = 0; for(int i=start; i<=end; i++) { sum+=arr[i]; } return sum; } void sliding_window_sum(int arr[], int n, int k) { // Your logic here if(n < k) { return; } int current_window_sum = window_sum(arr, 0, k-1); printf("%d ", current_window_sum); for(int i=k; i<n; i++) { current_window_sum += arr[i] - arr[i-k]; printf("%d ", current_window_sum); } } 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; }
Test Cases
Test Results
Input
5 3 1 2 3 4 5
Expected Output
6 9 12