#1922. 最优指令

最优指令

题目描述

我们现在来讨论一种机器的抽象模型。这种机器有一个有限的状态集 S=S0,S1,S2,...,Sn\red{S={S_0,S_1,S_2,...,S_n}}和一个有限的指令集C=C0,C2,...,Cm\red{C={C_0,C_2,...,C_m} }。机器在任意时刻都处于某 一种状态 s\red{s ∈} S\red{S }。同时,机器还有一个转移函数 f:S×CS\red{f : S \times C → S ,}表示机器在当前状态下接 到某个指令之后会转移到的状态,亦即机器在状态 s\red{s }下接到指令c\red{c }后状态会变成 f(s,c)\red{f (s,c) }。 现在对于一个机器的实例,你需要计算一个最短的指令序列,使得对于任意一个状态 s\red{s ,}按 照顺序经过序列中的所有指令之后机器一定会处于状态 s0\red{s_0 }

输入格式

第一行包含两个整数 S\red{|S| }C\red{|C| }

之后 S\red{|S| }行,每行 C\red{|C| }个整数。若输入文件中的行和列均从 1\red{1 }开始标号,那么第i\red{i }行第 j\red{j }列 的数为 k\red{k }就表示f(Si1,cj1)=Sk(0<=k<S)\red{f(S_{i-1},c_{j-1})=S_k(0<=k<|S|)}

输出格式

输出你求得的最短指令序列。你需要将指令的下标连续输出,并且输出下标的十六进制 值,表示法中的字母用小写字母表示。若最短的序列不唯一,输出任一个即可。若这样的序 列不存在,输出 impossible\red{impossible}

样例

输入样例

3 6 
0 2 2 0 0 2 
1 1 0 0 0 1 
1 0 1 2 2 2

输出样例

03

提示

对于全部数据,保证 S\red{|S|,}C<=16\red{|C|<=16,}输入数据保证是合法的。