#agc028a. [agc028_a]Two Abbreviations

[agc028_a]Two Abbreviations

题目描述

给定长度为NN的字符串SS和长度为MM的字符串TT,其中这些字符串由小写英文字母组成。

当以下条件都满足时,字符串XX被称为好字符串

  • XX的长度为LLLL能同时被NNMM整除。
  • XX的第11个、(LN+1)(\frac{L}{N}+1)个、(2×LN+1)(2 \times \frac{L}{N}+1)个、......((N1)×LN+1)((N-1)\times\frac{L}{N}+1)个字符按原顺序拼接起来得到SS
  • XX的第11个、(LM+1)(\frac{L}{M}+1)个、(2×LM+1)(2 \times \frac{L}{M}+1)个、......((M1)×LM+1)((M-1)\times\frac{L}{M}+1)个字符按原顺序拼接起来得到TT

判断是否存在好字符串。如果存在,请找出最短的好字符串的长度。

约束条件

  • 1N,M1051 \leq N,M \leq 10^5
  • SSTT只包含小写英文字母。
  • 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