34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
exit(EXIT_FAILURE);
}
// read data from dataname into input
char *input = NULL;
size_t ilen = slurp(&input, dataname);
// call the right function
void (*p)(char *, size_t) = NULL;
switch (y * 100 + d) {
default: fprintf(stderr, "no function for year %d and day %d\n", y, d);
exit(EXIT_FAILURE);
#if 0
case 201501: p = aoc201501; break;
case 201502: p = aoc201502; break;
case 201503: p = aoc201503; break;
case 201504: p = aoc201504; break;
case 201505: p = aoc201505; break;
case 201506: p = aoc201506; break;
case 201507: p = aoc201507; break;
case 201508: p = aoc201508; break;
case 201509: p = aoc201509; break;
case 201510: p = aoc201510; break;
case 201511: p = aoc201511; break;
case 201512: p = aoc201512; break;
case 201513: p = aoc201513; break;
case 201514: p = aoc201514; break;
case 201515: p = aoc201515; break;
case 201516: p = aoc201516; break;
case 201517: p = aoc201517; break;
case 201518: p = aoc201518; break;
case 201519: p = aoc201519; break;
case 201520: p = aoc201520; break;
case 201521: p = aoc201521; break;
case 201522: p = aoc201522; break;
case 201523: p = aoc201523; break;
case 201524: p = aoc201524; break;
case 201525: p = aoc201525; break;
#endif
case 202401: p = aoc202401; break;
case 202402: p = aoc202402; break;
}
p(input, ilen);
free(input);
}
|
|
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
|
>
|
34
35
36
37
38
39
40
41
42
43
44
45
|
exit(EXIT_FAILURE);
}
// read data from dataname into input
char *input = NULL;
size_t ilen = slurp(&input, dataname);
// call the right function
void (*p)(char *, size_t) = select(y, d);
if (p) p(input, ilen);
else fprintf(stderr, "Impossible!\n");
free(input);
}
|