CF1775A2.Gardener and the Capybaras (hard version)

传统题 时间 2000 ms 内存 256 MiB 4 尝试 1 已通过 1 标签

Gardener and the Capybaras (hard version)

题目描述

有三个只由字符 a,b 构成的字符串 a,b,ca,b,c ,且 a≤b,c≤ba\le b,c\le b 或 a≥b,c≥ba\ge b,c\ge b。 将它们拼在一起构成了一个新字符串 ss。

现在给你 ss,(3≤∣s∣≤2⋅1053\le |s|\le 2\cdot 10^5),你要复原这三个字符串。

一共有 T(T≤104)T(T\le 10^4) 组测试数据,所有数据中字符串的总长不会超过 4⋅1054\cdot 10^5。

输入格式

第一行,一个数 TT。
接下来的 TT 行,每行一个字符串,表示字符串 ss。

输出格式

对于每组测试数据,输出一行三个字符串,用空格隔开,表示拆出的三个字符串。

如果有多种拆分方式,输出任意一种。

如果无法拆分,则输出 :(。

说明/提示

定义字符串 xx 小于 yy ,当且仅当:

xx 是 yy 的前缀,且 x≠yx \not =y 。

或

在 xx 与 yy 的第一个不同的位置,xx 的这一位字符是 a,yy 的这一位字符是 b。

样例

5
bbba
aba
aaa
abba
abbb
b bb a
a b a
a a a
ab b a
a bb b

在线编程 IDE

建议全屏模式获得最佳体验