考虑五个图片堆叠在一起,比如图5.77中的9×8 的矩阵表示的是这些图片的边缘框。 图5.77
现在上面的图片顺序为图片1放在最底下,5放在最顶上。如果任何图片的边框覆盖了其他图片的边框,被覆盖的部分不会被显示出来。 观察样例如图5.78所示: 图5.78
那么从底向上图片的堆叠顺序为 EDABC。 现在的问题是给出一个堆叠后的表示,要确定从底向上的图片的堆叠顺序。下面是判定规则: (1)图片边框一定是由一个字母表示并且每条边至少3个字符。 (2)题目保证至少会给出边框每条边的一个字母,一个角的一个字符代表两条边。 (3)图片边框用大写字母表示,并且不会有两张图片的边框使用同一个大写字母。
每组输入的第一行为堆叠后的矩阵的高度h(h≤30),第二行为矩阵的宽度w(w≤30)。接下来是一个h×w 的矩阵。 输入数据可能包括多组,中间没有空行。
输出自底向上形成输入状况的图片边框所对应的字母。如果有多组排列方式,将所有的序列按照字母序排列输出。每个可行的序列占一行,对于每个输入,一定会至少有一个合法的序列满足题意。两组数据之间没有空格。
9 8 .CCC…. ECBCBB.. DCBCDB.. DCCC.B.. D.B.ABAA D.BBBB.A DDDDAD.A E…AAAA EEEEEE..
EDABC