Practice #2
Урок 10 из 12 курса Очередь — Серия «Структуры данных» №2 на Coddy.
Следующие задачи предназначены для использования очереди. Структура данных Queue уже предоставлена вам — используйте её!
Задание
ЛегкоНапишите функцию с именем maxWindowSum, которая принимает массив целых чисел (a) и размер скользящего окна (k), и возвращает максимальную сумму в скользящем окне.
Используйте предоставленную очередь Queue для решения этой задачи!
Попробуйте сами
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "solution.h"
int main() {
char line[4096];
int* a = (int*)malloc(sizeof(int) * 1000);
int aSize = 0;
if (fgets(line, sizeof(line), stdin)) {
char* tok = strtok(line, " \t\r\n");
while (tok) { a[aSize++] = atoi(tok); tok = strtok(NULL, " \t\r\n"); }
}
int k = 0;
scanf("%d", &k);
printf("%d\n", maxWindowSum(a, aSize, k));
free(a);
return 0;
}