aoc_omni/c/2017/1/problem.c

36 lines
601 B
C
Raw Permalink Normal View History

2024-07-18 21:06:39 -04:00
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
2024-07-18 21:06:39 -04:00
#include "../../lib/aoc.h"
2024-07-18 21:06:39 -04:00
int main() {
char *input = aoc_read_input();
int length = strlen(input) - 1;
int sum = 0;
2024-07-18 21:06:39 -04:00
for (int i = 0; i < length - 1; i++) {
if (input[i] == input[i + 1]) {
sum += input[i] - '0';
2024-07-18 21:06:39 -04:00
}
}
if (input[0] == input[length - 1]) {
sum += input[0] - '0';
2024-07-18 21:06:39 -04:00
}
printf("Part 1: %d\n", sum);
2024-07-18 21:06:39 -04:00
sum = 0;
2024-07-18 21:06:39 -04:00
for (int i = 0; i < length; i++) {
if (input[i] == input[(i + (length / 2)) % length]) {
sum += input[i] - '0';
2024-07-18 21:06:39 -04:00
}
}
printf("Part 2: %d\n", sum);
2024-07-18 21:06:39 -04:00
free(input);
2024-07-18 21:06:39 -04:00
}