33 lines
683 B
C
33 lines
683 B
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
|
|
#include "../../lib/aoc.h"
|
|
|
|
int round_score(const char *round) {
|
|
printf("round: %s\n", round);
|
|
int shape = round[2] - 'X' + 1;
|
|
int opponent_shape = round[0] - 'A' + 1;
|
|
int result = (((shape - opponent_shape) + 4) % 3) * 3;
|
|
printf("Shape: %d, opp_shape: %d, result: %d\n", shape, opponent_shape, result);
|
|
return shape + result;
|
|
}
|
|
|
|
int main() {
|
|
char *input = aoc_read_input();
|
|
|
|
int total_score = 0;
|
|
|
|
char *round = strtok(input, "\n");
|
|
|
|
while (round != NULL) {
|
|
total_score += round_score(round);
|
|
round = strtok(NULL, "\n");
|
|
}
|
|
|
|
printf("Part 1: %d\n", total_score);
|
|
|
|
free(input);
|
|
return 0;
|
|
}
|