]> git.friedersdorff.com Git - max/aoc_2022.git/blob - 2.c
Do day 7
[max/aoc_2022.git] / 2.c
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <string.h>
4
5
6 int main()
7 {
8     char *buffer;
9     size_t bufsize;
10     size_t characters;
11     int score = 0;
12
13     while ((characters = getline(&buffer, &bufsize, stdin)) != -1) {
14         --characters;
15
16         buffer[characters] = 0;
17
18         switch (buffer[0]) {
19             case 'A':
20                 switch (buffer[2]) {
21                     case 'X':
22                         score += 3 + 1;
23                         break;
24                     case 'Y':
25                         score += 6 + 2;
26                         break;
27                     case 'Z':
28                         score += 0 + 3;
29                         break;
30                 }
31                 break;
32             case 'B':
33                 switch (buffer[2]) {
34                     case 'X':
35                         score += 0 + 1;
36                         break;
37                     case 'Y':
38                         score += 3 + 2;
39                         break;
40                     case 'Z':
41                         score += 6 + 3;
42                         break;
43                 }
44                 break;
45             case 'C':
46                 switch (buffer[2]) {
47                     case 'X':
48                         score += 6 + 1;
49                         break;
50                     case 'Y':
51                         score += 0 + 2;
52                         break;
53                     case 'Z':
54                         score += 3 + 3;
55                         break;
56                 }
57                 break;
58         }
59
60     }
61     printf("%d", score);
62 }