uppgb.c (705B)
1 #include "common.h" 2 3 // I really don't want to parse this from input 4 uint64_t operation(uint64_t x, size_t i) { 5 if (i == 0) { 6 return x * 7; 7 } else if (i == 1) { 8 return x * 13; 9 } else if (i == 2) { 10 return x + 1; 11 } else if (i == 3) { 12 return x * x; 13 } else if (i == 4) { 14 return x + 7; 15 } else if (i == 5) { 16 return x + 6; 17 } else if (i == 6) { 18 return x + 4; 19 } 20 return x + 8; 21 } 22 23 int main(int argc, char **argv) { 24 char **lines; 25 size_t nlines = readlines(&lines, "input"); 26 27 monkis m = parse_monkis(lines, nlines, 1); 28 m.operate = operation; 29 30 size_t i; 31 for (i = 0; i < 10000; i++) 32 mround(m); 33 34 printf("%llu\n", get_result(m)); 35 36 let_the_monkis_out(m); 37 }