古代象形符号 Ancient Messages

题意翻译

题目描述 为了理解早期文明,考古学家经常研究用古代语言编写的文本。在3000多年前的埃及使用的一种语言是基于称为象形文字的字符。如图显示了六个象形文字及其名称,在这个题目中,您需要编写一个程序来识别这六个字。 ![]("C:\Users\白文礼\Desktop\4_1.png") 输入INPUT: ``` 输入格式 输入由几个测试用例组成,每个测试用例描述一个包含一个或多个的图像。 象形文字选自图所示的那些。图像以一系列水平扫描线的形式给出,这些水平扫描线由黑色像素(由1表示)和白色像素(由0表示)组成。在输入数据中,每个扫描线以十六进制表示法编码。 例如,序列将表示八个像素10011100(一个黑色像素,后面是两个白色像素,依此类推) 十六进制表示法为9c。 在十六进制中仅使用数字和小写字母a到f编码。每个测试用例的第一行包含两个整数,H和W。H(0<H≤200)是 图像中的扫描行数。 W(0<W≤50)是每行中十六进制字符的数量 。 接下来的H行包含图像的十六进制字符,从上到下。 输入图像符合以下规则: 图像仅包含图1中所示的象形文字。 每个图像至少包含一个有效的象形文字。 图像中的每个黑色像素都是有效象形文字的一部分。 每个象形文字由一组连邻的黑色像素组成,即每个黑色像素至少和一个位于其顶部,底部,左侧或右侧的其他黑色像素相临。 象形文字间不相连,一个象形文字中不包含其他象形文字。 对角线顶点接触的两个黑色像素必然具有共同的相邻的黑色像素。 象形文字可能会扭曲,但其在拓扑结构上一定等同于图1中的一个符号。 (两个图形的拓扑结构等同是说一个图形通过扭曲拖拽可以成为另一个图形,但是不能撕裂。) 在输入所有测试用例之后换行并输入两个零,表示结束。 输入样例 100 25 0000000000000000000000000 0000000000000000000000000 ...(50 lines omitted)... 00001fe0000000000007c0000 00003fe0000000000007c0000 ...(44 lines omitted)... 0000000000000000000000000 0000000000000000000000000 150 38 00000000000000000000000000000000000000 00000000000000000000000000000000000000 ...(75 lines omitted)... 0000000003fffffffffffffffff00000000000 0000000003fffffffffffffffff00000000000 ...(69 lines omitted)... 00000000000000000000000000000000000000 00000000000000000000000000000000000000 0 0 ``` 输出OUTPUT: ``` 输出格式 对于每个测试用例,输出其测试用例编号,后跟一个字符串,字符串包含的每一个字符都代表一个图像中的象形文字,具体对应关系如下: Ankh:A Wedjat:J Djed:D Scarab:S Was:W Akhet:K 按照图形中每个符号对应的大写字母的字典序进行输出。遵循样例的输出格式。 输出样例 Case 1: AKW Case 2: AAAAA ```

题目描述

[problemUrl]: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=246&page=show_problem&problem=3544 [PDF](https://uva.onlinejudge.org/external/11/p1103.pdf)

输入输出格式

输入格式


输出格式


输入输出样例

暂无测试点