Ejemplo n.º 1
0
 def test_palindromes(self):
     input_data = 'q' * 5
     expected = 10
     print(manacher_util.manacher(input_data))
     self.assertEqual(manacher_util.get_palindrome_number(input_data),
                      expected)
Ejemplo n.º 2
0
 def timed_run(string):
     start = time.time()
     manacher_util.manacher(string)
     return time.time() - start
Ejemplo n.º 3
0
 def test_no_overlap(self):
     input_data = 'aapmm'
     expected = [0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0]
     self.assertEqual(manacher_util.manacher(input_data), expected)
Ejemplo n.º 4
0
 def test_no_palindromes(self):
     input_data = 'abcdefghijklmonp'
     expected = [0 for _ in range(len(input_data) * 2 + 1)]
     self.assertEqual(manacher_util.manacher(input_data), expected)
Ejemplo n.º 5
0
 def test_same_char(self):
     input_data = 'a' * 5
     expected = [0, 0, 1, 1, 2, 2, 2, 1, 1, 0, 0]
     self.assertEqual(manacher_util.manacher(input_data), expected)