#P1196. Twofive
Twofive
题目描述
圣诞老人和他的小助手们之间的秘密消息通常使用25语言编码。25字母表与拉丁字母表基本相同,只是不包含字母'Z',即25字母表包含从'A'到'Y'的25个拉丁字母,顺序与拉丁字母表相同。25语言中的每个单词都由恰好25个不同的字母组成。单词可以按行优先顺序填入5×5的表格中。例如,单词ADJPTBEKQUCGLRVFINSWHMOXY可以表示为:
A D J P T B E K Q U C G L R V F I N S W H M O X Y
一个有效的25语言单词需要满足:每行的字母和每列的字母都必须按升序排列。因此,单词ADJPTBEKQUCGLRVFINSWHMOXY是有效的,而单词ADJPTBEGQUCKLRVFINSWHMOXY则是无效的(第二列和第三列的字母顺序被破坏)。
圣诞老人有一本词典,其中按字典序排列了所有有效的25语言单词,并为每个单词分配了从1开始的序号。例如:
- 单词ABCDEFGHIJKLMNOPQRSTUVWXY的序号是1
- 单词ABCDEFGHIJKLMNOPQRSUTVWXY的序号是2(与序号1的单词相比,U和T的位置互换)
由于词典非常庞大,请编写一个程序:
- 对于给定的有效单词,确定其序号
- 对于给定的序号,确定对应的单词
词典中的单词总数不超过个。
输入格式
程序从标准输入读取数据:
- 第一行包含单个字符:'W'或'N'
- 如果是'W',第二行包含一个有效的25语言单词(25个字符)
- 如果是'N',第二行包含一个存在的单词序号
输出格式
程序向标准输出写入结果:
- 如果输入是单词,输出其序号
- 如果输入是序号,输出对应的单词
样例输入
W
ABCDEFGHIJKLMNOPQRSUTVWXY
样例输出
2
题目来源
IOI 2001