def test_prob2_case_5(self): result = prob2.solution( 8, 10, [['#', '#', '#', '#', '#', '#', '#', '#', '#', '#'], ['#', '.', '.', '.', '.', '.', '.', '.', '.', '#'], ['#', '.', '.', '.', '.', '.', '.', '.', '.', '#'], ['#', '.', '.', '.', '.', '.', '.', '.', '.', '#'], ['#', '.', '.', '.', '.', '.', '.', '.', '.', '#'], ['#', '.', '.', '.', '.', '.', '.', '.', '.', '#'], ['#', '.', '.', '.', '.', '.', '.', '.', '.', '#'], ['#', '#', '#', '#', '#', '#', '#', '#', '#', '#']]) self.assertEqual(result, 1514)
def test_prob2_case_2(self): result = prob2.solution(3, 7, [['#', '.', '.', '.', '.', '.', '#'], ['#', '.', '.', '.', '.', '.', '#'], ['#', '#', '.', '.', '#', '#', '#']]) self.assertEqual(result, 2)
def test_prob2_case_4(self): result = prob2.solution(2, 3, [['.', '.', '.'], ['.', '.', '.']]) self.assertEqual(result, 2)
def test_prob2_case_1(self): result = prob2.solution( (1, (2, (3, (2, None, None), None), (6, None, None)), (3, (3, None, None), (1, (5, None, None), (6, None, None))))) self.assertEqual(result, 3)
def test_prob2_case_3(self): result = prob2.solution((1, (2, (1, None, None), (2, None, None)), (2, (4, None, None), (1, None, None)))) self.assertEqual(result, 2)
def test_prob2_case_3(self): result = prob2.solution(3, ["axz", "zzza", "wne"]) self.assertEqual(result, [25, 25, 18])
def test_prob2_case_4(self): result = prob2.solution(0, []) self.assertEqual(result, [])
def test_prob2_case_1(self): result = prob2.solution(4, ["abc", "abcba", "abcd", "cba"]) self.assertEqual(result, [2, 0, 4, 2])
def test_prob2_case_2(self): result = prob2.solution(1, ["axz"]) self.assertEqual(result, [25])
def test_prob2_case_1(self): result = prob2.solution(111) self.assertEqual(result, 2)
def test_prob2_case_2(self): result = prob2.solution(9999) self.assertEqual(result, 7379)
def test_prob2_case_1(self): result = prob2.solution([20, 8, 10, 1, 4, 15]) self.assertEqual(result, 62)
def test_prob2_case_4(self): result = prob2.solution([10000, 10000, 10000]) self.assertEqual(result, 30000)
def test_prob2_case_3(self): result = prob2.solution([1, 8, 1, 1]) self.assertEqual(result, 8)
def test_prob2_case_2(self): result = prob2.solution([1, 4, 4, 4, 4, 1, 1]) self.assertEqual(result, 16)
def test_prob2_case_1(self): result = prob2.solution([7, 1, 5, 9, 6, 7, 3]) self.assertEqual(result, 20)