AT_agc028_a [AGC028A] Two Abbreviations

题目描述

给定一个长度为 $N$ 的字符串 $S$ 和一个长度为 $M$ 的字符串 $T$。当且仅当一个字符串 $X$ 同时满足以下条件时,称其为好字符串: - $X$ 的长度 $L$ 可以被 $N$ 和 $M$ 整除。 - 连接 $X$ 的第 $1,\frac{L}{N}+1,2\times \frac{L}{N}+1,\dots,(N−1)\times \frac{L}{N}+1$ 位且不改变顺序,结果为 $S$。 - 连接 $X$ 的第 $1,\frac{L}{M}+1,2\times \frac{L}{M}+1,\dots,(N−1)\times \frac{L}{M}+1$ 位且不改变顺序,结果为 $T$。 你需要判断是否存在好字符串。如果存在,请求出最短的好字符串的长度。

输入格式

第一行两个用空格分隔的正整数 $N,M$。 第二行一个仅包含小写字母的字符串 $S$。 第三行一个仅包含小写字母的字符串 $T$。

输出格式

如果不存在任何一个好字符串,则输出 $-1$;如果存在,则打印最短的好字符串的长度。

说明/提示

**【样例解释】** 字符串 `accept` 是一个好字符串。不难证明,不存在比这更短的好字符串,故答案为 $6$。 **【数据范围】** 对于 $100\%$ 的数据,$1\le N,M\le10^5$,$S,T$ 仅包含小写字母,且 $|S|=N$,$|T|=M$。