3 void flash(char grid
[10][10], int *flashes
, int x
, int y
)
5 //already flashed or not charged up enough
6 if (grid
[y
][x
] == 0 || grid
[y
][x
] < 10)
10 for (int dy
= -1; dy
<=1; dy
++)
11 for (int dx
= -1; dx
<=1; dx
++)
12 if ( (dx
!= 0 || dy
!= 0) &&
13 x
+dx
>= 0 && x
+dx
< 10 &&
14 y
+dy
>= 0 && y
+dy
< 10) {
15 if (grid
[y
+dy
][x
+dx
] != 0)
17 flash(grid
, flashes
, x
+dx
, y
+dy
);
26 while( (c
= getchar()) != EOF
) {
37 while (flashes
!= 100) {
40 for (int y
= 0; y
<10; y
++)
41 for (int x
= 0; x
<10; x
++)
43 for (int y
= 0; y
<10; y
++)
44 for (int x
= 0; x
<10; x
++)
45 flash(grid
, &flashes
, x
, y
);