Created
December 22, 2018 01:27
-
-
Save tomtheisen/2d33836b9e06d8dce0cf3e421f9f3fe9 to your computer and use it in GitHub Desktop.
aoc19 wip
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ip 1 | |
ip0 jmp ip17 // addi 1 16 1 | |
ip1 r[5] = 1 // seti 1 1 5 | |
ip2 r[2] = 1 // seti 1 4 2 | |
ip3 r[3] = r[5] * r[2] // mulr 5 2 3 | |
ip4 r[3] = r[3] == r[4] // eqrr 3 4 3 | |
ip5 r[1] += r[3] // addr 3 1 1 | |
ip6 jmp ip8 // addi 1 1 1 | |
ip7 r[0] += r[5] // addr 5 0 0 | |
ip8 r[2] += 1 // addi 2 1 2 | |
ip9 r[3] = r[2] > r[4] // gtrr 2 4 3 | |
ip10 r[1] += r[3] // addr 1 3 1 | |
ip11 jmp ip3 // seti 2 7 1 | |
ip12 r[5] += 1 // addi 5 1 5 | |
ip13 r[3] = r[5] > r[4] // gtrr 5 4 3 | |
ip14 r[1] += r[3] // addr 3 1 1 | |
ip15 jmp ip2 // seti 1 8 1 | |
ip16 end // mulr 1 1 1 | |
ip17 r[4] += 2 // addi 4 2 4 | |
ip18 r[4] *= r[4] // mulr 4 4 4 | |
ip19 r[4] *= 19 // mulr 1 4 4 | |
ip20 r[4] *= 11 // muli 4 11 4 | |
ip21 r[3] += 1 // addi 3 1 3 | |
ip22 r[3] *= 22 // mulr 3 1 3 | |
ip23 r[3] += 3 // addi 3 3 3 | |
ip24 r[4] += r[3] // addr 4 3 4 | |
ip25 r[1] += r[0] // addr 1 0 1 | |
ip26 jmp ip1 // seti 0 3 1 | |
ip27 r[3] = r[1] // setr 1 1 3 | |
ip28 r[3] *= r[1] // mulr 3 1 3 | |
ip29 r[3] += r[1] // addr 1 3 3 | |
ip30 r[3] *= r[1] // mulr 1 3 3 | |
ip31 r[3] *= 14 // muli 3 14 3 | |
ip32 r[3] *= r[1] // mulr 3 1 3 | |
ip33 r[4] += r[3] // addr 4 3 4 | |
ip34 r[0] = 0 // seti 0 9 0 | |
ip35 jmp ip1 // seti 0 4 1 | |
#ip 1 | |
ip0 jmp ip17 | |
*ip1 r[5] = 1 | |
*ip2 r[2] = 1 | |
*ip3 r[3] = 1 == r[4] | |
ip5 if r[3]: r[0] += r[5] | |
ip8 r[2] += 1 | |
ip9 r[3] = ++r[2] > r[4] | |
ip10 if not r[3]: jmp ip3 | |
*ip12 r[3] = ++r[5] > r[4] | |
ip14 if r[3]: end | |
ip15 jmp ip2 | |
*ip17 r[4] += 2 | |
ip18 r[4] *= r[4] * 19 * 11 | |
ip21 r[3] = (r[3] + 1) * 22 + 3 | |
ip24 r[4] += r[3] | |
ip25 r[1] += r[0] | |
ip26 jmp ip1 | |
*ip27 r[3] = 27 | |
ip28 r[3] *= 28 | |
ip29 r[3] += 29 | |
ip30 r[3] *= 30 | |
ip31 r[3] *= 14 | |
ip32 r[3] *= 32 | |
ip33 r[4] += r[3] | |
ip34 r[0] = 0 | |
ip35 jmp ip1 | |
#ip 1 | |
*ip17 r[4] = 2 * 2 * 19 * 11 | |
ip21 r[3] = (r[3] + 1) * 22 + 3 | |
ip24 r[4] += r[3] | |
ip25 if r[0]: | |
*ip27 r[3] = (27 * 28 + 29) * 30 * 14 * 32 | |
ip33 r[4] += r[3] | |
ip34 r[0] = 0 | |
*ip1 r[5] = 1 | |
*ip2 r[2] = 1 | |
*ip3 r[3] = 1 == r[4] | |
ip5 if r[3]: r[0] += r[5] | |
ip8 r[2] += 1 | |
ip9 r[3] = ++r[2] > r[4] | |
ip10 if not r[3]: jmp ip3 | |
*ip12 r[3] = ++r[5] > r[4] | |
ip14 if r[3]: end | |
ip15 jmp ip2 | |
#ip 1 | |
*ip17 r[4] = 836 | |
ip21 r[3] = 25 | |
ip24 r[4] += 25 | |
ip25 if r[0]: | |
*ip27 r[3] = 10550400 | |
ip33 r[4] += 10550400 | |
ip34 r[0] = 0 | |
*ip1 r[5] = 1 | |
*ip2 r[2] = 1 | |
*ip3 r[3] = 1 == r[4] | |
ip5 if r[3]: r[0] += r[5] | |
ip8 r[2] += 1 | |
ip9 r[3] = ++r[2] > r[4] | |
ip10 if not r[3]: jmp ip3 | |
*ip12 r[3] = ++r[5] > r[4] | |
ip14 if r[3]: end | |
ip15 jmp ip2 | |
#ip 1 | |
*ip17 r[4] = 836 | |
ip21 r[3] = 25 | |
ip24 r[4] += 25 | |
ip25 if r[0]: | |
ip33 r[4] += 10550400 | |
ip34 r[0] = 0 | |
*ip1 r[5] = 1 | |
*ip2 r[2] = 1 | |
*ip3 if 1 == r[4]: r[0] += r[5] | |
ip8 r[2] += 1 | |
ip10 if not (++r[2] > r[4]): jmp ip3 | |
*ip12 if (++r[5] > r[4]): end | |
ip15 jmp ip2 | |
*ip17 r[4] = 861 | |
ip25 if r[0]: | |
ip33 r[4] += 10550400 | |
ip34 r[0] = 0 | |
*ip1 r[5] = 1 | |
while 1: | |
*ip2 r[2] = 1 | |
do { | |
*ip3 if 1 == r[4]: r[0] += r[5] | |
ip8 r[2] += 1 | |
ip10 } while not (++r[2] > r[4]) | |
*ip12 if (++r[5] > r[4]): end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment