diff --git a/06/06.c b/06/06.c index 98e9501..0363617 100644 --- a/06/06.c +++ b/06/06.c @@ -4,11 +4,11 @@ #include #include -#define DEFAULT_FILE "input.txt" +#define DEFAULT_FILE "input3.txt" #define STRBUF_LEN 200 #define ISDIGIT(X) (X >= '0' && X <= '9') -#define NUM_RACES 4 +#define NUM_RACES 1 uint64_t parse_num(char *str) { @@ -21,9 +21,9 @@ uint64_t parse_num(char *str) return num; } -void parse_line(char *str, uint16_t *nums) +void parse_line(char *str, uint64_t *nums) { - uint16_t race = 0; + uint64_t race = 0; for (race = 0; race < NUM_RACES; race++) { @@ -72,9 +72,9 @@ int main(int argc, char **argv) return 1; } - uint16_t times[NUM_RACES] = {0}; - uint16_t dists[NUM_RACES] = {0}; - uint16_t results[NUM_RACES] = {0}; + uint64_t times[NUM_RACES] = {0}; + uint64_t dists[NUM_RACES] = {0}; + uint64_t results[NUM_RACES] = {0}; fgets(strbuf, STRBUF_LEN, file); parse_line(strbuf, times); @@ -82,7 +82,7 @@ int main(int argc, char **argv) fgets(strbuf, STRBUF_LEN, file); parse_line(strbuf, dists); - uint16_t i = 0; + uint64_t i = 0; uint64_t multiplied = 1; for (i = 0; i < NUM_RACES; i++) @@ -96,7 +96,7 @@ int main(int argc, char **argv) } results[i] = res2 - res1 + 1; - printf("%d ", results[i]); + printf("%lu ", results[i]); multiplied *= results[i]; } diff --git a/06/input3.txt b/06/input3.txt new file mode 100644 index 0000000..807207a --- /dev/null +++ b/06/input3.txt @@ -0,0 +1,2 @@ +Time: 50748685 +Distance: 242101716911252