UOJ Logo Universal Online Judge

UOJ

#529. 【美团杯2020】114514

附件下载 统计

众所周知,114514 是一个带有味道的数字。

蒜斜不太喜欢 114514,就像米斯达不喜欢 4 一样。但是总有一些讨厌的群友给蒜斜发这个数字,最开始,在蒜斜的禁言+拉黑手段下,这样的风气稍微缓解了一点。但是好景不长,群友们渐渐发明出了新的手段:有一些群友会把若干个 114514 穿插在一起,从而变成一个新的字符串。例如两个 114514 就能够穿插形成 111145144514, 114151145144 等字符串。

对于一些短的字符串,蒜斜还能勉强分辨出这些字符串是怎么由 114514 得到的。但是有些时候群友会发一些特别复杂的字符串,这就让蒜斜犯了难。于是他找到了你,希望你能帮助他把一些字符串拆分成 114514,这样他就有证据可以去禁言那些讨厌的群友了。

具体来说,蒜斜会给你一些长度为 6 的倍数的只包含字符 1,4,5 的字符串 S。而你要找到n=|S|/6个序列,x1,1,x1,2,,x1,6,,xn,1,,xn,6。要求:

  1. 对于每个i(1in),有1xi,1<xi,2<<xi,6|S|
  2. 所有的xi,j(1in,1j6)两两不同。
  3. 对于每个i(1in),有Sxi,1=Sxi,2=Sxi,5=1, Sxi,3=Sxi,6=4, Sxi,4=5。这里对于S中的字符,下标从1开始。

输入格式

第一行一个整数T(1T105)表示数据组数。

接下来T行,每行一个字符串S(1|S|6×105)。保证所有的字符串长度总和不超过6×105,且保证存在一种拆分方案。

输出格式

对于每组数据,输出|S|/6行,每行6个整数,表示一种拆分方案。如果存在多种合法的拆分方案,你只需要输出任意一种即可。

样例输入

3
114514
111144551144
111141154115114454514414

样例输出

1 2 3 4 5 6
1 2 5 7 9 11
3 4 6 8 10 12
1 2 5 8 13 18
3 4 9 12 14 21
6 7 15 17 20 22
10 11 16 19 23 24

限制与约定

Small Task: 保证 S 的最后 |S|/6 个字符都为4

Large Task: 无特殊限制。

时间限制:1s

空间限制:1024MB

下载

样例数据下载