diff options
author | Vincent Douillet <vincent@vdouillet.fr> | 2021-12-03 17:01:37 +0100 |
---|---|---|
committer | Vincent Douillet <vincent@vdouillet.fr> | 2021-12-03 17:01:37 +0100 |
commit | 736823f313bd2e00e49a1b52aaf0ea68a79db438 (patch) | |
tree | 5cf54f57e5c2afd8ea22baacb3ffa05a76a59fcc /012.c | |
parent | 04e79fa276ae1c3620868d85941b2c7b7c11222a (diff) |
improve input handling & merge part 1 and 2 for the first days
Diffstat (limited to '012.c')
-rw-r--r-- | 012.c | 39 |
1 files changed, 0 insertions, 39 deletions
@@ -1,39 +0,0 @@ -#include <stdlib.h> -#include <stdio.h> -#include "input.h" - -#define INPUT "input/01.txt" - -int main() { - // lecture du fichier d'entree - FILE* file=fopen(INPUT,"r"); - if(file == NULL) { - printf("Le fichier %s n'existe pas\n", INPUT); - return -1; - } - size_t lineCount = count_lines(file); - int* input = malloc(lineCount * sizeof(int)); - if(read_lines_as_int(file, input, lineCount) != 0) { - printf("Erreur de parsing du fichier\n"); - return -1; - } - // fermeture du fichier - fclose(file); - - // calcul des variations de profondeur - int result = 0; - int windowSum = input[0] + input[1] + input[2]; - for(size_t i = 1; i < lineCount - 2; i++) { - int newWindowSum = input[i] + input[i+1] + input[i+2]; - if(newWindowSum > windowSum) - result++; - - windowSum = newWindowSum; - } - printf("%d\n", result); - - // nettoyage - free(input); - - return 0; -} |