#agc028a. [agc028_a]Two Abbreviations

[agc028_a]Two Abbreviations

問題文

長さ NN の文字列 SS と長さ MM の文字列 TT が与えられます。 どちらの文字列も、英小文字からなります。

文字列 XX は、以下の条件をすべて満たす時、よい文字列と呼ばれます。

  • XX の長さを LL とした時、LLNNMM のどちらでも割り切れる
  • XX の $1,\\ \\frac{L}{N}+1,\\ 2 \\times \\frac{L}{N}+1,\\ ...\\ (N-1)\\times\\frac{L}{N}+1$ 番目の文字を並べ替えることなく連結すると SS になる
  • XX の $1,\\ \\frac{L}{M}+1,\\ 2 \\times \\frac{L}{M}+1,\\ ...\\ (M-1)\\times\\frac{L}{M}+1$ 番目の文字を並べ替えることなく連結すると TT になる

よい文字列が存在するか判定し、存在するならば、その中で最短のものの長さを求めてください。

制約

  • 1leqN,Mleq1051 \\leq N,M \\leq 10^5
  • SS, TT は英小文字からなる。
  • S=N|S|=N
  • T=M|T|=M

入力

入力は以下の形式で標準入力から与えられる。

NN MM SS TT

出力

よい文字列が存在しないならば、-1 と出力せよ。 存在するならば、その中で最短のものの長さを出力せよ。


入力例 1

3 2
acp
ae

出力例 1

6

例えば、accept という文字列はよい文字列です。 これより短いよい文字列は存在しないので、答えは 66 です。


入力例 2

6 3
abcdef
abc

出力例 2

-1

入力例 3

15 9
dnsusrayukuaiia
dujrunuma

出力例 3

45