def test_repeat_string(self): self.assertEqual(3, repeat_string("abcd", "cdabcdab")) self.assertEqual(4, repeat_string("bb", "bbbbbbb"))
""" Given two strings A and B, find the minimum number of times A has to be repeated such that B is a substring of it. If no such solution, return -1. For example, with A = "abcd" and B = "cdabcdab". Return 3, because by repeating A three times (“abcdabcdabcd”), B is a substring of it; and B is not a substring of A repeated two times ("abcdabcd"). Note: The length of A and B will be between 1 and 10000. Reference: https://leetcode.com/problems/repeated-string-match/description/ """ from algorithms.strings import repeat_string A = "abcd" B = "cdabcdab" print(repeat_string(A, B))