diff options
Diffstat (limited to '')
-rw-r--r-- | inf/aoc/2.1.c | 56 | ||||
-rw-r--r-- | inf/aoc/2.2.c | 56 | ||||
-rw-r--r-- | inf/aoc/2.txt | 2500 |
3 files changed, 2612 insertions, 0 deletions
diff --git a/inf/aoc/2.1.c b/inf/aoc/2.1.c new file mode 100644 index 0000000..76d4d53 --- /dev/null +++ b/inf/aoc/2.1.c @@ -0,0 +1,56 @@ +#include <stdio.h> +#include <stdlib.h> +int main (void) { + int t = 0; + while (1) { + char buf[8]; + fgets(buf, 8, stdin); + if (ferror(stdin) || feof(stdin)) + break; + switch (buf[2]) { + case 'X': + t += 1; + switch (buf[0]) { + case 'A': + t += 3; + break; + case 'B': + t += 0; + break; + case 'C': + t += 6; + break; + } + break; + case 'Y': + t += 2; + switch (buf[0]) { + case 'A': + t += 6; + break; + case 'B': + t += 3; + break; + case 'C': + t += 0; + break; + } + break; + case 'Z': + t += 3; + switch (buf[0]) { + case 'A': + t += 0; + break; + case 'B': + t += 6; + break; + case 'C': + t += 3; + break; + } + break; + } + } + printf("%d\n", t); +} diff --git a/inf/aoc/2.2.c b/inf/aoc/2.2.c new file mode 100644 index 0000000..0818432 --- /dev/null +++ b/inf/aoc/2.2.c @@ -0,0 +1,56 @@ +#include <stdio.h> +#include <stdlib.h> +int main (void) { + int t = 0; + while (1) { + char buf[8]; + fgets(buf, 8, stdin); + if (ferror(stdin) || feof(stdin)) + break; + switch (buf[2]) { + case 'X': + t += 0; + switch (buf[0]) { + case 'A': + t += 3; + break; + case 'B': + t += 1; + break; + case 'C': + t += 2; + break; + } + break; + case 'Y': + t += 3; + switch (buf[0]) { + case 'A': + t += 1; + break; + case 'B': + t += 2; + break; + case 'C': + t += 3; + break; + } + break; + case 'Z': + t += 6; + switch (buf[0]) { + case 'A': + t += 2; + break; + case 'B': + t += 3; + break; + case 'C': + t += 1; + break; + } + break; + } + } + printf("%d\n", t); +} diff --git a/inf/aoc/2.txt b/inf/aoc/2.txt new file mode 100644 index 0000000..3914035 --- /dev/null +++ b/inf/aoc/2.txt @@ -0,0 +1,2500 @@ +A Z +A Y +B X +B X +C X +B X +A X +A X +C X +A X +A X +A Y +B X +A Y +C X +C X +A X +A Y +C X +B X +A X +B X +A X +A X +B Y +B Y +A X +A X +A X +A X +A X +A Y +A X +B X +B Y +A Y +C Z +C X +A X +A Y +A X +A X +A Y +A X +A Y +A X +B X +C X +A X +B X +A X +C X +A Y +B X +B X +A X +A X +C Y +B X +A X +C X +B X +B X +A X +A X +B X +A Y +C X +A Y +A X +A X +A Y +B X +A X +A X +A X +B Y +A X +A X +A Y +A X +A X +B Y +B Y +B X +C X +B Y +A X +C X +C X +A Y +A X +A Z +B X +C X +A Y +B X +A X +A X +A X +A Y +C X +A X +A Z +A X +A Y +B Y +A X +C X +B X +A Y +B Z +B X +C Y +B X +B Z +A Y +B X +C X +C Y +A X +A Y +A X +B X +A Y +B Y +A X +C Y +A Y +B Y +A X +B Y +B X +B Y +A X +B Y +A X +C Z +A X +C X +A Y +A X +C X +A X +A X +A X +C X +B Z +A X +B Y +B X +A Y +A X +A X +B Y +B Y +A Y +B X +A X +C Y +A X +C X +A X +A X +A X +A X +A X +C Z +C X +A Z +C Z +A X +A Y +B X +C X +B X +B Y +C X +B X +A X +A X +A X +A Y +B X +B Y +A X +C X +A X +A X +A X +A X +C Y +A Z +C X +A X +A Y +B X +A Y +A X +A Y +A X +A X +A X +A X +A Y +A X +B X +A X +A X +C Y +C Y +A X +C X +A X +A X +C X +C X +B Z +B X +B X +A X +A Y +B Y +A X +A X +C X +C X +C X +B X +C X +B Y +A X +B Y +B X +B X +A X +B Y +A Y +C X +B X +C X +A Y +B X +C X +A X +C X +A X +B Y +A X +A X +B Z +C X +B X +C X +B X +A X +A X +A X +A X +A X +C X +C X +A X +A Z +A Y +A X +A X +A X +A X +C Y +C Y +B Z +A X +A X +B X +B X +A Y +A X +B Y +A X +B Y +A X +C Y +C X +A Y +B Y +C X +A X +A X +A X +A Y +A X +A X +A X +B Y +B X +C X +C Y +A Y +A Z +B X +C X +B X +C X +A X +B Z +B Y +A X +C X +A Y +B X +B X +A Y +A X +A X +A Y +A X +B X +A X +A X +C Y +C Y +A Y +A Y +B Y +B Y +B Y +B X +A X +A Y +B Y +B X +A Y +A X +A Y +C X +C X +B Y +A Y +B Y +A Y +A X +B Y +B X +C X +A X +A X +A X +B Y +B X +A X +B Y +A Y +A X +C X +A X +B Y +A X +A X +B Y +A Y +A X +C Y +B Z +A Y +C X +A Y +A X +B Y +A X +B Y +B Y +B X +B X +A X +A X +C X +B Y +B X +C X +B Y +A X +A X +A X +A X +B Y +C X +B X +A X +A X +A Y +C Y +A Y +B X +A X +B X +A X +A Y +B Y +A X +C X +C X +A Y +B X +C Y +A Y +B X +A X +A Y +C X +A X +A X +B Y +A Y +B X +B Y +B Y +A X +A X +A X +B Y +A Y +A X +B X +A Y +A Y +B X +C Y +A X +A Y +A X +B X +A X +B X +C Z +A X +A X +B Y +A X +A X +A X +C Z +C X +A Z +C Y +B X +A Y +B X +A X +A Y +A X +C X +A X +A X +C Y +A Z +C Y +B Y +B X +B X +A Y +C X +B X +A Z +A X +A Z +C X +A X +C Z +C X +B Z +C Y +B Y +A X +B Y +A X +A X +C X +B X +A X +C Z +B Y +B Y +A Y +B Y +A X +A X +B Y +A X +A X +C Y +C X +A X +C Y +C X +B X +B X +A X +B Y +A Y +A X +B Y +B Y +B X +B X +A X +B X +B X +B Y +B Y +C X +B X +B X +A X +A X +A X +A X +A Y +C Y +A X +A Y +C Z +A Y +C X +A X +C Y +A X +A X +A Y +A Z +A Y +A Y +A X +A Y +A Z +C X +C Z +B X +A X +A X +B X +A X +A X +A X +C X +A X +A Y +A X +A X +A Y +C Z +C X +A X +A X +A Z +A X +C X +A Y +C X +A Y +C X +C X +A X +A X +A Y +B Y +C X +C X +B X +B Z +B X +B X +A X +C X +A Y +C X +A Z +B X +B Y +A Y +A Y +A X +A Y +A X +A X +A Y +A X +A X +B Z +A X +A X +A X +B Y +B Y +C Z +A Y +A Y +B Y +A X +B X +C X +C Y +C X +B X +C X +A Y +A X +A X +B X +C X +B X +A Y +B X +B Z +A Y +A X +A Y +B X +B Z +A X +A X +C X +A X +A Y +A X +B X +A X +A X +A Z +B X +B Y +C Y +C X +A Y +A X +B Y +C X +A X +C Y +A X +A Y +A Y +A X +A X +C X +C X +A Y +A Y +C X +A X +B X +C X +B Y +C Y +C X +B X +B Y +C X +B X +B Y +A X +A X +B X +A Y +A X +B X +A X +C Y +A X +B X +A Y +C Y +A X +A Y +A Z +C Z +A X +A X +C X +A X +B X +A X +C X +C X +A Y +A X +C Y +A Y +A X +B Y +A X +A Y +A X +C Z +C Z +C X +A X +A X +A X +A X +C X +A X +C X +B X +B X +A X +A Y +B Y +B X +B X +A Y +A Y +A X +A X +B Y +B X +A X +C X +B X +C X +B Y +B Z +B Y +A X +A X +A X +A X +A X +B Y +A X +C X +B Z +A X +C Y +A X +B X +C Y +A X +A Y +B X +A X +B Y +B X +A Y +C Y +C X +A Y +A X +A X +A X +C X +B X +C X +A Y +A X +A Y +C Z +C X +A X +A Y +B X +B X +B X +B X +A X +B X +A Z +B Y +A X +A X +A X +C Z +A Y +A Y +C X +C X +C Y +B Y +A Y +A X +A X +C Y +A X +C X +A X +A X +C Y +A Y +A X +C X +A X +A Y +C X +A Y +A X +A X +A X +B X +B X +A X +B Y +C Y +C X +A Y +B X +B X +B Z +C X +B Y +A Y +C Z +B X +C X +A X +A Y +B Y +B X +C Z +B X +A X +C X +C X +A X +A X +A Y +B Y +B X +A Y +C Y +B Y +B Y +A X +A Y +A X +B X +A Y +A X +A Y +A X +B Z +B X +A X +A Y +A X +B Y +A Y +A X +A X +C X +A X +A X +A X +A X +B Y +B X +A X +A X +C Y +C X +A Y +A X +B X +A X +B X +B X +B Y +A X +B X +B Y +A X +B X +C X +A X +A X +C Z +A X +B X +A X +B X +B X +B Y +A X +B Y +C Y +A X +C X +A X +B X +B Y +A X +C X +B X +A X +C Y +C X +B X +A X +B X +A Z +C Y +A X +A X +B X +A Y +B X +A X +A Y +B X +A X +C Y +A X +C X +B X +A X +C Y +C X +A X +B Y +B X +A Y +B X +A X +B X +A Y +B X +A X +A X +C X +A X +A X +A X +A X +C X +C X +B X +B Y +B X +B Z +A X +B X +B Y +B X +B X +A X +A Z +A Z +A X +B Y +A X +B X +B Y +A X +B Y +B X +A X +C X +C Y +A X +A X +B X +B X +B Y +A X +C X +B Y +A X +A Z +A X +C Y +A Y +B X +C X +C X +A X +B X +C X +A Z +A X +A X +B Y +C X +A X +A Y +C Z +B X +A Y +A X +A Z +C Y +A X +C X +A X +C Y +B X +A X +A X +B Y +A X +B X +B X +B X +C X +C X +A X +C Z +A X +C Y +A X +C Y +A Y +B Y +B X +B Y +B X +C Y +B Y +B Y +B X +B Y +A Y +A Y +C Z +A X +A X +A X +A Z +B X +B Y +B X +B Y +A X +C X +B X +A X +C Y +B X +C X +C Y +B Y +A X +B Y +B X +C X +B X +C X +B X +A X +C X +B Z +B Z +C X +A Y +B X +A Y +A X +B X +C Y +C X +A Y +C Y +B Z +B Y +B Y +B Y +B Z +B Y +A X +A X +A Y +B Y +B Y +A X +A Z +C X +A X +A Y +C X +A Y +A X +B X +A X +A X +C X +A X +A X +C Y +B Y +A Y +A X +A X +B Y +A X +B X +A X +A X +B X +B X +A X +B Y +A X +A Y +B Y +A Y +A X +C X +A Y +A X +C X +A X +A X +B X +C Y +C Y +B X +B Z +A X +A Y +A X +A X +C Z +A X +B X +A Z +A X +A X +A X +A X +A X +A X +C X +B X +B X +C X +A X +A X +A X +A X +A X +A X +B X +A X +C X +A Y +A X +A X +A X +A X +B X +B Y +A Y +A X +A X +C X +C X +A X +A X +C X +A X +A X +A X +A X +A X +A X +C X +A X +A X +A X +A X +B X +A X +A X +B Y +C Y +A X +A Y +C Y +A X +B X +B X +A X +A X +A X +B X +A X +A X +A X +A Y +A X +B Y +A Y +A X +A Y +A X +C X +A X +C Y +B X +B X +A X +A X +A X +A X +A X +C Y +A Z +A X +B X +B X +A X +A X +C Z +A X +B Z +B Y +C Y +A X +A X +C X +B X +B X +B X +C X +A X +A Y +B Y +C X +A X +B Y +A X +C Z +B X +A Y +A X +A X +C Y +A X +A X +C X +A X +B X +B Y +B Y +B X +A X +A Y +C X +A X +A X +A X +B X +C X +B Y +A X +A X +A Y +A X +A X +B X +C X +C X +A Y +B X +A X +A X +A X +B Y +A X +B X +A X +A X +A X +A Y +A X +A Z +C X +B Y +B X +A X +B X +C X +A X +A X +B X +A X +A X +A X +A X +B X +A X +C X +A Y +B X +C X +A X +B X +A X +B Y +A X +C Y +A X +C Y +C X +B Y +A Y +A X +A X +B X +A X +C X +A X +A Z +B X +A X +A X +A Y +A X +A X +C X +B Y +C Z +A X +A Y +B X +B X +A X +B Y +C X +A X +B X +A Y +B X +A X +A Y +A X +A X +C Y +B X +A Y +C X +C X +A Y +A Y +A X +B Z +A Y +C X +C X +C Y +A Y +B X +B Z +A X +B Y +A X +A X +B X +A Y +C X +C Y +A X +B Y +A Y +A X +B Z +B Y +A X +B X +A X +A X +B Y +A Y +A X +A X +A X +A Y +A X +A X +C X +A X +A X +C X +A X +A X +C Z +B X +A Y +A X +B Y +B X +A X +A X +A X +C Y +C Y +B Y +A X +C X +C X +B X +A X +A X +A X +A Y +A X +A X +B Z +C X +A X +A X +A X +B Y +B X +C X +B X +A X +B X +A X +C X +A X +C X +A X +C X +B Y +B X +A X +A X +B Y +B X +B X +A X +B X +C Y +A X +A Y +A Y +A Y +A Z +B Y +A X +A X +A X +A X +A Z +A X +A X +A X +B Z +B Y +C Y +A X +A X +B X +C X +A Y +A X +B X +A X +A X +B X +B Y +A X +B X +C X +B X +A X +A X +A X +A X +B X +B X +C Y +B X +B X +A X +B X +A X +B Y +B X +A X +A X +A Y +B X +A X +B Y +A Y +B Y +B X +A Z +A X +B Y +A X +B X +A X +A X +A X +B Y +B X +A X +C Z +A Y +A Y +C X +B Z +B X +C Z +B X +B X +A X +A X +B Y +C X +A X +A Z +B X +A X +A X +B Y +A X +A X +A X +B Y +A X +C Y +A X +C Y +A X +C Y +B X +A Y +A X +B X +A X +B Y +A X +B X +B X +A Z +A X +C Y +B Y +A X +A X +C X +B Y +C Y +C X +A Y +B Y +A Y +A Y +B X +A X +A X +A X +A X +A Y +A X +A X +A X +B Y +A X +A Y +C X +A X +B X +A X +A X +A X +C Z +A X +A Y +A X +C Z +B Y +B X +A X +A Z +A X +A X +A Y +A X +A X +A X +B Y +A X +B X +A X +A X +A X +A X +B X +B Z +C X +C X +C X +B Y +A X +B Y +B X +A Y +B X +B X +A X +C Y +B X +A X +A X +A X +A X +A X +A X +B Y +C Y +B X +C Y +B Y +C X +A Y +C X +B X +C X +B X +A X +A X +B Y +A X +C X +A Y +C X +C X +B Y +A X +C X +C X +B Z +A X +C X +A Y +B Y +A X +A Y +A X +B X +A X +A X +B Y +A Z +A X +B Y +B X +A X +A Y +B X +B X +A X +A X +A Y +A X +C X +A X +B X +C X +C X +C Y +A X +B X +B Y +A X +C X +A X +B Y +A X +B X +B Z +A X +A X +A X +B X +C X +C X +B X +A Y +A X +A Y +A X +A X +A X +A X +C Y +B X +A X +A X +A X +B Y +A X +B X +B Y +A Z +A Y +A X +A Y +A X +A Y +B Z +A X +B Y +B Z +B X +A X +C X +C Y +A X +A X +A X +B X +A Y +C X +A X +B Y +A Y +B X +B X +A X +A Y +B X +A Y +C X +A X +C X +A X +C X +A X +A X +C X +A X +A X +A Y +B X +C X +B Y +A Y +A X +A X +A X +A Z +B Y +A X +A X +B Y +A Y +B Y +A X +B Y +B X +A X +A X +A X +B X +B Y +A X +C Z +B Z +A X +A X +A X +B X +B Y +A X +B Z +A X +A Y +A Y +A Y +C X +B Y +A X +A X +C Y +B X +A Y +A X +A X +B Y +C X +C X +C X +A X +A X +A X +B Z +A X +C X +A X +A X +B X +B X +A X +C Y +A X +B X +C X +B Y +A X +B Y +C X +A X +C X +B Y +A X +A Y +C X +C Z +A X +C X +A X +A X +C X +A Y +C X +B Y +A X +C Z +A X +B X +B Y +A Y +A X +A X +A X +A X +A Y +A Y +B X +C X +A Y +A X +C X +B X +B Y +C X +B X +A X +B X +A X +C Y +A X +A X +A X +A X +C X +A X +B X +A X +B X +A X +A Y +C X +C Y +C X +A Z +B X +A Z +A X +B Y +A Y +B X +A X +B Y +A Y +A X +B Y +A X +B X +A X +A X +A X +A X +B Y +A Y +A X +A X +B X +B Z +A Y +A Y +C Y +C Y +A X +C X +A X +B Y +B X +B Y +B X +C X +B X +C X +A X +B Y +A X +B X +A X +B X +C Y +B X +A X +A Y +A X +B Y +C X +C X +A X +B Z +A X +A X +B Y +A X +A X +B X +A Y +C X +A X +C Y +A Y +C X +A Y +A X +A X +A X +A Y +B X +B X +A Y +C X +B Y +A Y +B X +B X +B X +B X +A X +B X +B X +A X +C X +A X +C X +C X +A X +C X +B X +A Y +A Z +A X +A X +A X +A Y +A X +A X +C Z +A X +B X +C X +A X +B X +C X +C X +A X +B Y +A X +A X +A X +A Y +B Y +B Y +A X +B X +A X +C X +A X +B Y +C Y +C X +C X +B X +B X +C X +A Y +B X +A X +A X +A X +A X +A Y +B X +B X +C Y +C Y +B Y +B X +A X +C Y +A X +C Z +C X +A X +B Z +A X +A Z +C X +B Y +A X +A Y +A X +B X +A Y +C X +C Y +B X +B X +B Y +B Y +C X +B Y +B Y +B X +C X +C X +A X +A X +A Y +A X +A Y +B X +A X +B Y +B X +A X +A X +A Y +B X +B X +A X +B X +C Y +A Y +B Y +C Y +B Y +A X +B Y +B X +B Z +A Y +A Y +C Y +B X +A X +A X +B Y +A X +A X +B X +A X +A X +A X +B X +B X +B Y +A X +C X +A X +B X +A X +A X +A Y +B X +B X +B X +C X +B Y +C Z +A X +C X +A X +B X +A X +A Y +B Y +A Z +A X +C X +A Y +A X +A X +A X +A X +A Y +A X +C X +A X +C Y +B X +A X +A X +A X +A X +A X +C X +A X +B X +B Y +B Y +B X +C Z +C X +B X +C Y +A X +A X +A X +A X +A X +C X +A X +B X +C X +C X +A X +A X +B X +A X +A X +A X +B X +A X +C X +A X +A Y +A X +B Y +A X +B X +A Y +C X +B X +C Y +C Y +B X +A X +B X +C X +A X +C X +A X +C X +B X +B X +C X +C X +B X +B X +C Y +B X +A X +B X +B X +B Y +A Y +B X +A X +C Y +A Y +C Y +A X +B Y +A X +A X +A X +B Y +B X +A Y +A X +A X +A Y +B X +B Y +A Y +B X +C X +C Z +B X +A Y +A X +C X +A X +C X +B Z +C X +A Y +A X +C X +B Y +A Z +B Y +A X +A X +A Y +C X +A Z +A X +B Y +A X +B X +A Y +A Y +A X +A X +A X +C Y +B X +A X +B X +B Y +B Y +A X +A X +A Y +A X +C X +B X +C X +B X +B X +C Y +A Y +B X +A X +A X +A X +C X +C X +A X +B X +A X +A X +A Z +A X +C X +B X +A X +C Y +A Y +C Y +B Y +B Y +B Z +A X +C X +A X +B Y +B Y +A X +B Y +A X +B Y +B X +B X +C X +B Y +B X +A X +A Y +B X +A X +B Z +A Y +B X +B X +A Y +C Y +B X +B Y +A X +B X +A Y +A Y +B X +B Y +B X +A X +C X +A X +A X +A X +B Y +A Y +B X +C X +C Z +A X +B Y +A Y +A X +B X +A X +A Y +A X +A Y +A X +A X +A X +C X +A Y +C Y +A X +A X +C Z +B X +A Y +B X +B X +B X +B X +B X +A X +A X +B X +B Y +A X +C Y +C X +A X +A X +A X +A X +A X +A X +A X +A Y +B Y +A X +A X +A Z +C Y +C Y +B X +C Z +A X +A X +A X +B Z +B Y +A X +A X +A X +B X +A X +C X +C X +C X +B X +A X +A X +C Z +B Z +C Y +A X +A X +A X +C Z +A X +A X +C X +C X +A X +C Y +A X +A Y +A X +A X +A Z +C X +C X +A Y +B X +B X +A Y +A X +B X +C Y +A X +A Y +B Z +A X +C Y +A X +B Y +A X +A Y +A X +C Z +A X +B X +A X +B Y +A X +A X +A X +A X +A X +B Y +C X +A X +B X +A X +A Y +A Z +A X +A X +B Y +B X +C X +A X +A X +B X +B Y +B Y +A Y +B Z +B Y +A X +A X +A X +A X +B X +C Y +A X +A X +A X +A X +A X +A X +A X +A X +B Y +A X +B X +C X +C X +C X +C X +A X +B Y +A X +B X +B X +A X +A X +C Z +A X +B X +B X +C X +A X +B X +B X +B X +B X +B Y +A X +B X +A Y +A X +A Y +B Y +A X +C Y +B X +A X +A X +A X +A Z +A Y +A X +C X +C X +B X +A X +A X +B X +A X +A Y +C Z +A Y +B X +B Y +A X +C Y +B Z |