diff --git a/04/solution.c b/04/solution.c index 88dab3d..b21c53a 100644 --- a/04/solution.c +++ b/04/solution.c @@ -1,9 +1,15 @@ #include +#include int main(void) { int a, b, c, d, S = 0, G = 0; + char l[64], *e; - while (scanf("%u-%u,%u-%u", &a, &b, &c, &d) == 4) { + while (fgets(l, 64, stdin)) { + a = b = c = d = 0; + e = l; +#define rdec(V) { while (isdigit(*e)) V = 10 * V + (*e++ - '0'); e++; } + rdec(a) rdec(b) rdec(c) rdec(d) S += (a >= c && b <= d) || (c >= a && d <= b); G += (a <= c && b >= c) || (c <= a && d >= a); }