summaryrefslogtreecommitdiffstats
path: root/19/py/d05.py
blob: 1415b9999b8336ff17c48dbd3735950be8647e0c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import intcode

def pt1(input):
    program = [int(x) for x in input[0].split(",")]
    c = intcode.Computer(program)
    c.input = 1
    output = []
    while c.memory[c.pointer] != 99:
        c.step()
        if c.output != None:
            output.append(c.output)
            c.output = None
    return output

def pt2(input):
    program = [int(x) for x in input[0].split(",")]
    c = intcode.Computer(program)
    c.input = 5
    output = []
    while c.memory[c.pointer] != 99:
        c.step()
        if c.output != None:
            output.append(c.output)
            c.output = None
    return output

if __name__ == "__main__":
    import cProfile

    input = open("../input/05", "r").readlines()
    cProfile.run("pt1(input)")
    cProfile.run("pt2(input)")
    print(pt1(input))
    print(pt2(input))