AT_abc284_f [ABC284F] ABCBAC

题目描述

给定一个长度为 $N$ 的字符串 $S$ 和一个整数 $i\ (0\leq i\leq N)$,定义 $f_i(S)$ 为: - $S$ 的前 $i$ 个字符, - $S$ 的反转字符串, - $S$ 的后 $N-i$ 个字符, 按此顺序连接得到的字符串。例如,当 $S=$ `abc`,$i=2$ 时,$f_i(S)=$ `abcbac`。 现在给定一个长度为 $2N$ 的字符串 $T$。请找出一个长度为 $N$ 的字符串 $S$ 和一个整数 $i\ (0\leq i\leq N)$,使得 $f_i(S)=T$。如果不存在这样的 $S,i$ 组合,请报告。

输入格式

输入通过标准输入给出,格式如下: > $N$ $T$

输出格式

如果不存在满足条件的 $S,i$ 组合,则输出 `-1`。如果存在,则输出 $S$ 和 $i$,用换行分隔。如果有多个满足条件的 $S,i$ 组合,输出其中任意一个即可。

说明/提示

### 限制 - $1\leq N \leq 10^6$ - $N$ 是整数 - $T$ 是由小写英文字母组成的长度为 $2N$ 的字符串 ### 样例解释 1 如题目所述,当 $S=$ `abc`,$i=2$ 时,$f_i(S)=$ `abcbac`,与 $T$ 一致,因此输出 `abc` 和 $2$。 ### 样例解释 2 当 $S=$ `abab`,$i=3$ 也满足条件。 ### 样例解释 3 当 $S=$ `agc`,$i=3$ 也满足条件。 ### 样例解释 4 如果不存在满足条件的 $S,i$ 组合,则输出 `-1`。 由 ChatGPT 4.1 翻译