#include <stdio.h>
void sliding_window_sum(int arr[], int n, int k) {
// Your logic here
// int slide_start = 0;
// while((slide_start+k) <= n)
// {
// int sum=0;
// for(int i=slide_start;i<(slide_start+k);i++)
// {
// sum = sum + arr[i];
// }
// printf("%d ",sum);
// slide_start++;
// }
if (k > n || k <= 0) return;
int sum = 0;
for (int i = 0; i < k; i++) sum += arr[i]; // first window
printf("%d", sum);
for (int i = k; i < n; i++) {
sum += arr[i] - arr[i-k]; // update by removing outgoing and adding incoming
printf(" %d", sum);
}
printf("\n");
}
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;
}
Input
5 3 1 2 3 4 5
Expected Output
6 9 12