blob: f647681c8be721a8feca79afb1454095a65a885f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
static char grid[512][32];
static int h, w;
static long trees(int dx, int dy) {
long trees = 0;
for (int x = 0, y = 0; y < h; x += dx, y += dy) {
trees += grid[y][x%w] == '#';
}
return trees;
}
int main(void) {
while (EOF != scanf("%s\n", grid[h])) {
h++;
}
w = strlen(grid[0]);
printf("%ld\n", trees(3, 1));
printf(
"%ld\n",
trees(1, 1) * trees(3, 1) * trees(5, 1) * trees(7, 1) * trees(1, 2)
);
}
|