(before,code,after)
| 22 | return regs |
| 23 | |
| 24 | def valid_opcodes(before,code,after): |
| 25 | _,a,b,c = code |
| 26 | valid = set() |
| 27 | for op in range(0,16): |
| 28 | if run_inst(before[:],op,a,b,c) == after: |
| 29 | valid.add(op) |
| 30 | return valid |
| 31 | |
| 32 | @aoc.main('16') |
| 33 | def main(indata: str): |