Practice #2
Leçon 10 sur 12 du cours File - Série sur les structures de données n°2 de Coddy.
Les prochains défis sont conçus pour utiliser une file d'attente. La structure de données Queue est déjà fournie pour vous — utilisez-la !
Défi
FacileÉcrivez une fonction nommée maxWindowSum qui reçoit un tableau d'entiers (a) et une taille de fenêtre glissante (k), et renvoie la somme maximale dans la fenêtre glissante.
Utilisez la Queue fournie pour résoudre ce problème !
Essayez vous-même
#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;
}