#ABC324C. 错误修正

错误修正

错误修正

题目描述

高桥君向青木君发送了一个由小写英文字母组成的字符串 TT。结果,青木君收到了一个由小写英文字母组成的字符串 TT'

TT' 可能是从 TT 变化而来的。具体来说,已知以下四个条件中恰好有一个成立。

  • TT' 等于 TT
  • TT' 是在 TT 中的某个位置(可能是开头和末尾)插入一个小写英文字母后得到的字符串。
  • TT' 是从 TT 中删除一个字符后得到的字符串。
  • TT' 是将 TT 中的一个字符改为另一个小写英文字母后得到的字符串。

给定青木君收到的字符串 TT'NN 个由小写英文字母组成的字符串 S1,S2,,SNS_1, S_2, \ldots, S_N。求出 S1,S2,,SNS_1, S_2, \ldots, S_N 中所有可能等于高桥君发送的字符串 TT 的字符串。

输入格式

输入按以下格式从标准输入给出:

NN TT'
S1S_1
S2S_2
\vdots
SNS_N

输出格式

(i1,i2,,iK)(i_1, i_2, \ldots, i_K)S1,S2,,SNS_1, S_2, \ldots, S_N 中所有可能等于 TT 的字符串的下标按升序排列得到的序列。按以下格式输出这个序列的长度 KK 以及序列本身:

KK
i1i_1 i2i_2 \ldots iKi_K

样例

5 ababc
ababc
babc
abacbc
abdbc
abbac
4
1 2 3 4

S1,S2,,S5S_1, S_2, \ldots, S_5 中,可能等于 TT 的字符串是 S1,S2,S3,S4S_1, S_2, S_3, S_4,说明如下。

S1S_1 可能等于 TT,因为 T=T' = ababc 等于 S1=S_1 = ababc。

S2S_2 可能等于 TT,因为 T=T' = ababc 是在 S2=S_2 = babc 的开头插入字母 a 得到的。

S3S_3 可能等于 TT,因为 T=T' = ababc 是从 S3=S_3 = abacbc 中删除第 4 个字符 c 得到的。

S4S_4 可能等于 TT,因为 T=T' = ababc 是将 S4=S_4 = abdbc 中的第 3 个字符 d 改为 b 得到的。

S5S_5 不可能等于 TT,因为如果把 S5=S_5 = abbac 当作 TT,则 T=T' = ababc 不满足题目描述中的四个条件中的任何一个。

1 aoki
takahashi
0

9 atcoder
atoder
atcode
athqcoder
atcoder
tacoder
jttcoder
atoder
atceoder
atcoer
6
1 2 4 7 8 9

数据范围

  • NN 是整数。
  • 1N5×1051\leq N\leq 5\times 10^5
  • SiS_iTT' 是长度在 115×1055\times 10^5 之间(含端点)、由小写英文字母组成的字符串。
  • S1,S2,,SNS_1, S_2, \ldots, S_N 的总长度至多为 5×1055\times 10^5
难度 普及
通过率
尝试 0
已通过 0
ID
3090
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签