Exemplo n.º 1
0
 def test_Task1(self):
     solver = AoC()
     solver.data = [
         "L.LL.LL.LL", "LLLLLLL.LL", "L.L.L..L..", "LLLL.LL.LL",
         "L.LL.LL.LL", "L.LLLLL.LL", "..L.L.....", "LLLLLLLLLL",
         "L.LLLLLL.L", "L.LLLLL.LL"
     ]
     solver.data = solver.generateMap(solver.data)
     self.assertEqual(37, solver.Task1())
Exemplo n.º 2
0
 def test_Task1(self):
     solver = AoC()
     solver.data = ["mask = XXXXXXXXXXXXXXXXXXXXXXXXXXXXX1XXXX0X",
                    "mem[8] = 11",
                    "mem[7] = 101",
                    "mem[8] = 0"]
     result = solver.Task1()
     self.assertEqual(165, result)
Exemplo n.º 3
0
 def test_Task2(self):
     solver = AoC()
     solver.data = ["mask = 000000000000000000000000000000X1001X",
                    "mem[42] = 100",
                    "mask = 00000000000000000000000000000000X0XX",
                    "mem[26] = 1"]
     result = solver.Task2()
     self.assertEqual(208, result)
Exemplo n.º 4
0
 def test_Task2_2(self):
     solver = AoC()
     solver.data = [
         28, 33, 18, 42, 31, 14, 46, 20, 48, 47, 24, 23, 49, 45, 19, 38, 39,
         11, 1, 32, 25, 35, 8, 17, 7, 9, 4, 2, 34, 10, 3
     ]
     result = solver.Task2()
     self.assertEqual(19208, result)
Exemplo n.º 5
0
    def test_Task1(self):
        solver = AoC()
        solver.data = [0, 3, 6]
        result = solver.Task1(2020)
        self.assertEqual(436, result)

        solver.data = [1, 3, 2]
        result = solver.Task1(2020)
        self.assertEqual(1, result)

        solver.data = [2, 1, 3]
        result = solver.Task1(2020)
        self.assertEqual(10, result)

        solver.data = [1, 2, 3]
        result = solver.Task1(2020)
        self.assertEqual(27, result)

        solver.data = [2, 3, 1]
        result = solver.Task1(2020)
        self.assertEqual(78, result)

        solver.data = [3, 2, 1]
        result = solver.Task1(2020)
        self.assertEqual(438, result)

        solver.data = [3, 1, 2]
        result = solver.Task1(2020)
        self.assertEqual(1836, result)
Exemplo n.º 6
0
 def test_Task1(self):
     solver = AoC()
     solver.preambleLength = 5
     solver.data = [
         35, 20, 15, 25, 47, 40, 62, 55, 65, 95, 102, 117, 150, 182, 127,
         219, 299, 277, 309, 576
     ]
     fault = solver.Task1()
     self.assertEqual(127, fault)
Exemplo n.º 7
0
 def test_two_movement_steps(self):
     solver = AoC()
     solver.data = [
         "L.LL.LL.LL", "LLLLLLL.LL", "L.L.L..L..", "LLLL.LL.LL",
         "L.LL.LL.LL", "L.LLLLL.LL", "..L.L.....", "LLLLLLLLLL",
         "L.LLLLLL.L", "L.LLLLL.LL"
     ]
     _map = solver.generateMap(solver.data)
     solver.simulateMovements(_map)
     self.assertEqual(71, solver.countOccupiedSeats(_map))
     solver.simulateMovements(_map)
     self.assertEqual(20, solver.countOccupiedSeats(_map))
Exemplo n.º 8
0
 def test_Task1_1(self):
     solver = AoC()
     solver.data = [16, 10, 15, 5, 1, 11, 7, 19, 6, 12, 4]
     result = solver.Task1()
     self.assertEqual(35, result)
Exemplo n.º 9
0
 def test_Task2(self):
     solver = AoC()
     solver.data = ["1 + 2 * 3 + 4 * 5 + 6", "1 + (2 * 3) + (4 * (5 + 6))", "2 * 3 + (4 * 5)"]
     result = solver.Task2()
     self.assertEqual(328, result)
Exemplo n.º 10
0
 def test_Task2_6(self):
     solver = AoC()
     solver.data = [3, 2, 1]
     result = solver.Task2()
     self.assertEqual(18, result)
Exemplo n.º 11
0
 def test_Task2_7(self):
     solver = AoC()
     solver.data = [3, 1, 2]
     result = solver.Task2()
     self.assertEqual(362, result)
Exemplo n.º 12
0
 def test_Datagenerator(self):
     solver = AoC()
     solver.data = [".#.", "..#", "###"]
     solver.generateData()
     self.assertEqual(27, len(solver.pocket))
Exemplo n.º 13
0
 def test_Task2_5(self):
     solver = AoC()
     solver.data = [2, 3, 1]
     result = solver.Task2()
     self.assertEqual(6895259, result)
Exemplo n.º 14
0
 def test_Task2_3(self):
     solver = AoC()
     solver.data = [2, 1, 3]
     result = solver.Task2()
     self.assertEqual(3544142, result)
Exemplo n.º 15
0
 def test_Task2_4(self):
     solver = AoC()
     solver.data = [1, 2, 3]
     result = solver.Task2()
     self.assertEqual(261214, result)
Exemplo n.º 16
0
 def test_Task2(self):
     solver = AoC()
     solver.data = [0, 3, 6]
     result = solver.Task2()
     self.assertEqual(175594, result)
Exemplo n.º 17
0
 def test_Task2_2(self):
     solver = AoC()
     solver.data = [1, 3, 2]
     result = solver.Task2()
     self.assertEqual(2578, result)
Exemplo n.º 18
0
 def test_Task1(self):
     solver = AoC()
     solver.data = [".#.", "..#", "###"]
     solver.generateData()
     result = solver.Task1(6)
     self.assertEqual(112, result)
Exemplo n.º 19
0
 def test_RuleGenerator(self):
     solver = AoC()
     solver.data = ["class: 1-3 or 5-7\nrow: 6-11 or 33-44\nseat: 13-40 or 45-50"]
     solver.generateData()
     self.assertEqual(3, len(solver.rules))
Exemplo n.º 20
0
 def test_Task2(self):
     solver = AoC()
     solver.data = ["class: 0-1 or 4-19\nrow: 0-5 or 8-19\nseat: 0-13 or 16-19", "nearby tickets:\n3,9,18\n15,1,5\n5,14,9"]
     solver.generateData()
     result = solver.Task2()
Exemplo n.º 21
0
 def test_Task1(self):
     solver = AoC()
     solver.data = ["class: 1-3 or 5-7\nrow: 6-11 or 33-44\nseat: 13-40 or 45-50", "nearby tickets:\n7,3,47\n40,4,50\n55,2,20\n38,6,12"]
     solver.generateData()
     result = solver.Task1()
     self.assertEqual(71, result)
Exemplo n.º 22
0
 def test_TicketGenerator(self):
     solver = AoC()
     solver.data = ["nearby tickets:\n7,3,47\n40,4,50\n55,2,20\n38,6,12"]
     solver.generateData()
     self.assertEqual(4, len(solver.nearbyTickets))