AT_indeednow_2015_qualb_2 高橋くんと文字列操作
Description
[problemUrl]: https://atcoder.jp/contests/indeednow-qualb/tasks/indeednow_2015_qualb_2
高橋くんは文字列 $ s $ を持っており、文字列 $ t $ を作りたいと思っています。 高橋くんは、文字列の末尾の $ 1 $ 文字を先頭に追加し、末尾の $ 1 $ 文字を削除するという操作を文字列 $ s $ に行うことで、文字列 $ s $ を文字列 $ t $ にしたいと考えています。
最小で何回この操作を行えば、文字列 $ s $ を文字列 $ t $ にできるでしょうか?最小の操作回数を出力するプログラムを書いてください。この操作では文字列 $ s $ を文字列 $ t $ に変換することができない場合、$ -1 $ と出力してください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ s $ $ t $
- $ 1 $ 行目には、高橋くんが持っている文字列 $ s\ (1\ ≦\ \|s\|\ ≦\ 1,000) $ が与えられる。ただし、$ \|s\| $ は文字列 $ s $ の長さを表す。$ s $ は半角小文字アルファベットa-zのみからなる。
- $ 2 $ 行目には、高橋くんが作りたい文字列 $ t\ (1\ ≦\ \|t\|\ ≦\ 1,000) $ が与えられる。$ t $ は半角小文字アルファベットa-zのみからなる。
Output Format
$ 1 $ 行目に、高橋くんが文字列 $ s $ を文字列 $ t $ に変換するための操作の最小回数を出力せよ。
行末の改行を忘れないこと。
Explanation/Hint
### Sample Explanation 1
`abcd` の末尾の文字を先頭に追加すると、 `dabcd` となり、ここから末尾の文字を削除すると、 `dabc` となります。 よって、$ 1 $ 回の操作で $ s $ は $ t $ に等しくなります。
### Sample Explanation 2
問題文中の操作を $ s $ に $ 2 $ 回行うと $ t $ と等しくなります。 $ 5 $ 回、$ 8 $ 回行っても $ t $ と等しくなりますが、最小のものを求める必要があります。