Leetcode挑戦問題——Repeated String Match

1318 ワード

Repeated String Match
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.
 2*$str2_len && strstr($str1,$str2) === false){
            return -1;
        }else{
            $str1 .= $a;
            return repeatedStringMatch($str1,$str2,++$num,$a);//      ,     ,       $num++

        }
    }
    echo repeatedStringMatch($str1,$str2);
?>

結果:3
もし間違いがあれば、皆さんの批判と指摘を望んでいます.ありがとうございます.