def main() -> None: puzzle = aocd.models.Puzzle(2021, 24) my_aocd.print_header(puzzle.year, puzzle.day) inputs = my_aocd.get_input(puzzle.year, puzzle.day, 252) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2015, 14) assert _do_part_1(TEST, 1000) == 1120 assert _do_part_2(TEST, 1000) == 689 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 9) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2017, 16) my_aocd.print_header(puzzle.year, puzzle.day) assert _solve(_parse(TEST), "abcde", 1) == "baedc" assert _solve(_parse(TEST), "abcde", 2) == "ceadb" inputs = my_aocd.get_input(2017, 16, 1) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 21) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST) == 739785 assert part_2(TEST) == 444356092776315 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 2) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 8) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST) == 26 assert part_2(TEST) == 61229 inputs = my_aocd.get_input(2021, 8, 200) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 13) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST) == 17 assert _solve_2(TEST) == RESULT inputs = my_aocd.get_input(puzzle.year, puzzle.day, 748) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 10) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST) == 26_397 assert part_2(TEST) == 288_957 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 94) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 23) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST) == 12_521 assert part_2(TEST) == 44_169 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 5) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2017, 2) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST1) == 18 assert part_2(TEST2) == 9 inputs = my_aocd.get_input(2017, 2, 16) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 25) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST) == 58 assert visualize_part_1(TEST) is None inputs = my_aocd.get_input(puzzle.year, puzzle.day, 137) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 14) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST) == 1_588 assert part_2(TEST) == 2_188_189_693_529 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 102) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 22) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST1) == 39 assert part_1(TEST2) == 590_784 assert part_1(TEST3) == 474_140 assert part_2(TEST3) == 2_758_514_936_282_235 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 420) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2015, 6) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST1) == 1_000_000 assert part_1(TEST2) == 1000 assert part_1(TEST3) == 0 assert part_2(TEST4) == 1 assert part_2(TEST5) == 2_000_000 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 300) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 12) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST1) == 10 assert part_1(TEST2) == 19 assert part_1(TEST3) == 226 assert part_2(TEST1) == 36 assert part_2(TEST2) == 103 assert part_2(TEST3) == 3509 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 21) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2021, 18) my_aocd.print_header(puzzle.year, puzzle.day) assert str(_solve_1(["[1,1]", "[2,2]", "[3,3]", "[4,4]", "[5,5]", "[6,6]"])) \ == "[[[[5,0],[7,4]],[5,5]],[6,6]]" assert str(_solve_1(TEST1)) \ == "[[[[8,7],[7,7]],[[8,6],[7,7]]],[[[0,7],[6,6]],[8,7]]]" assert part_1(TEST2) == 4140 assert part_2(TEST2) == 3993 inputs = my_aocd.get_input(puzzle.year, puzzle.day, 100) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2017, 4) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(("aa bb cc dd ee", )) == 1 assert part_1(("aa bb cc dd aa", )) == 0 assert part_1(("aa bb cc dd aaa", )) == 1 assert part_2(("abcde fghij", )) == 1 assert part_2(("abcde xyz ecdab", )) == 0 assert part_2(("a ab abc abd abf abj", )) == 1 assert part_2(("iiii oiii ooii oooi oooo", )) == 1 assert part_2(("oiii ioii iioi iiio", )) == 0 inputs = my_aocd.get_input(2017, 4, 512) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2017, 1) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(TEST1) == 3 assert part_1(TEST2) == 4 assert part_1(TEST3) == 0 assert part_1(TEST4) == 9 assert part_2(TEST5) == 6 assert part_2(TEST6) == 0 assert part_2(TEST7) == 4 assert part_2(TEST8) == 12 assert part_2(TEST9) == 4 inputs = my_aocd.get_input(2017, 1, 1) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)
def main() -> None: puzzle = aocd.models.Puzzle(2017, 3) my_aocd.print_header(puzzle.year, puzzle.day) assert part_1(("1", )) == 0 assert part_1(("12", )) == 3 assert part_1(("23", )) == 2 assert part_1(("1024", )) == 31 assert part_2(("1", )) == 1 assert part_2(("2", )) == 4 assert part_2(("3", )) == 4 assert part_2(("4", )) == 5 assert part_2(("5", )) == 10 inputs = my_aocd.get_input(2017, 3, 1) result1 = part_1(inputs) print(f"Part 1: {result1}") result2 = part_2(inputs) print(f"Part 2: {result2}") my_aocd.check_results(puzzle, result1, result2)