github.com/cycloss/advent-of-code@v0.0.0-20221210145555-15039b95faa6/2020/day3/day3.c (about)

     1  #include <stdio.h>
     2  #include <stdlib.h>
     3  
     4  int getTrees(int across, int down) {
     5      FILE* inFile = fopen("inputFiles/day3.txt", "r");
     6      int pos = 0, downp = 0, trees = 0;
     7      for (char buffer[33]; fgets(buffer, 33, inFile); downp++) {
     8          if (downp % down == 0) {
     9              (buffer[pos % 31] == '#') ? trees++ : trees;
    10              pos += across;
    11          }
    12      }
    13      fclose(inFile);
    14      return trees;
    15  }
    16  
    17  int main() {
    18      printf("Part one trees encountered: %d\n", getTrees(3, 1));
    19      int pt2 = getTrees(1, 1), vectors[][2] = { { 3, 1 }, { 5, 1 }, { 7, 1 }, { 1, 2 } };
    20      for (int i = 0; i < sizeof(vectors) / sizeof(vectors[0]); i++) {
    21          pt2 *= getTrees(vectors[i][0], vectors[i][1]);
    22      }
    23      printf("\nPart two trees encountered: %u\n", pt2);
    24  }