#A2026L. 【KRUSKAL2026】AC Automaton
【KRUSKAL2026】AC Automaton
题目描述
给定确定性有限状态自动机(DFA),状态集 ,起始状态 ,接受状态集 大小为 ,字母表 。计算能够被自动机接受且长度不短于 的字符串中字典序最小者。由于答案可能很长,因此如果答案的长度超过 ,你只需要输出答案的最后 个字符。若满足前述要求的字符串不存在,输出 WA。
字符串被自动机接受,当且仅当存在一条从初始状态开始、到接受状态结束的 walk,使得走过的转移边的字母恰好形成了该字符串。walk 可以经过重复点、重复边。
输入格式
本题有多组测试数据。
第一行包含一个整数 (),表示测试数据组数。
对每组测试:
- 第一行包含用空格分隔的三个整数,依次表示:状态数 (),接受状态数 (),长度下限 ()。
- 第二行包含用空格分隔的 个整数,表示接受状态集。保证这些数均在 之间,且不重复。
- 接下来 行,每行包含用空格分隔的 个整数,其中第 行的两个整数分别表示状态 沿
A/C转移后的状态。
保证 。
输出格式
输出 行,每行输出一个字符串,其中第 行表示第 组测试的答案。
样例
2
5 1 6
4
2 5
5 3
4 2
5 5
5 5
3 1 2
2
2 3
3 3
3 3
CCCCA
WA
提示
样例第一组测试中,DFA 识别的语言为 $\{\texttt{A}\texttt{C}^{2t+1}\texttt{A}\mid t\ge 0\}$。