示例#1
0
def part1():
    numbers = flatten(parse("01.txt"))
    total = 0
    for number in numbers:
        fuel = number // 3 - 2
        pp(number, fuel)
        total += fuel
    print(total)
示例#2
0
def part2():
    mem = flatten(parse("02.txt"))
    for noun in range(0, 99):
        for verb in range(0, 99):
            output = get_output(mem, noun, verb)
            if output == 19690720:
                pp(noun, verb, output)
                pp(100 * noun + verb)
示例#3
0
def part1():
    mem = flatten(parse("02.txt"))
    mem[1] = 12
    mem[2] = 2
    # pp(mem)
    eip = 0
    while eip is not None:
        eip = step(mem, eip)
        # pp(eip, mem)
    pp(mem[0])
示例#4
0
def part2():
    print("hello")
    numbers = flatten(parse("01.txt"))
    total = 0
    for number in numbers:
        subtotal = 0
        fuel = number
        fuel = fuel // 3 - 2
        while fuel > 0:
            subtotal += fuel
            fuel = fuel // 3 - 2

        pp(number, subtotal)
        total += subtotal
    print(total)
示例#5
0
def part1():
    pp(
        best_sequence(
            [3, 15, 3, 16, 1002, 16, 10, 16, 1, 16, 15, 15, 4, 15, 99, 0, 0]))

    pp(
        best_sequence([
            3,
            23,
            3,
            24,
            1002,
            24,
            10,
            24,
            1002,
            23,
            -1,
            23,
            101,
            5,
            23,
            23,
            1,
            24,
            23,
            23,
            4,
            23,
            99,
            0,
            0,
        ]))
    pp(
        best_sequence([
            3,
            31,
            3,
            32,
            1002,
            32,
            10,
            32,
            1001,
            31,
            -2,
            31,
            1007,
            31,
            0,
            33,
            1002,
            33,
            7,
            33,
            1,
            33,
            31,
            31,
            1,
            32,
            31,
            31,
            4,
            31,
            99,
            0,
            0,
            0,
        ]))
    mem = flatten(parse("07.txt"))
    pp(best_sequence(mem))
示例#6
0
def part2():
    mem = flatten(parse("05.txt"))
    eip = 0
    while eip is not None:
        eip = step(mem, eip, input=5)