diff options
Diffstat (limited to '13')
| -rw-r--r-- | 13/input | 2 | ||||
| -rw-r--r-- | 13/part1.c | 48 | ||||
| -rw-r--r-- | 13/testinput | 2 |
3 files changed, 0 insertions, 52 deletions
diff --git a/13/input b/13/input deleted file mode 100644 index f9503fe..0000000 --- a/13/input +++ /dev/null @@ -1,2 +0,0 @@ -1005526 -37,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,41,x,x,x,x,x,x,x,x,x,587,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,13,19,x,x,x,23,x,x,x,x,x,29,x,733,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,17 diff --git a/13/part1.c b/13/part1.c deleted file mode 100644 index b62d007..0000000 --- a/13/part1.c +++ /dev/null @@ -1,48 +0,0 @@ -#include <stdio.h> -#include <stdint.h> -#include <stdlib.h> -#include <string.h> - -#define BUFFER_SIZE 256 -#define MAX_INPUT_LEN 128 - -int solve(const char *filename) -{ - FILE *file = fopen(filename, "r"); - - char buffer[BUFFER_SIZE] = { 0 }; - fgets(buffer, BUFFER_SIZE, file); - int depart = atoi(buffer); - fgets(buffer, BUFFER_SIZE, file); - int bus_ids[MAX_INPUT_LEN] = { 0 }; - bus_ids[0] = atoi(buffer); - int i = 1; - char *p = buffer; - while ((p = strchr(p, ','))) { - // x is never the last value, just keep looping we find a valid input - while (*++p == 'x') { - p += 1; - } - - bus_ids[i++] = atoi(p); - } - - int bus_id = 0; - int wait = INT32_MAX; - for (int j = 0; j < i; j++) { - int id = bus_ids[j]; - int tmprem = id - (depart % id); - if (tmprem < wait) { - bus_id = id; - wait = tmprem; - } - } - - fclose(file); - return bus_id * wait; -} - -int main(int argc, char *argv[]) -{ - printf("%i\n", solve(argv[argc - 1])); -} diff --git a/13/testinput b/13/testinput deleted file mode 100644 index d76f619..0000000 --- a/13/testinput +++ /dev/null @@ -1,2 +0,0 @@ -939 -7,13,x,x,59,x,31,19 |
