AT_arc003_2.[ARC003B] さかさま辞書
普及-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
高桥君决定和朋友们玩“逆向接龙”游戏。
“逆向接龙”是一种接龙游戏,要求用前一个人所说单词的首字母作为下一个单词的尾字母。
然而,高桥君对自己的英文单词不太自信,于是偷偷使用了“逆向字典”。
普通字典是按照单词首字母的字母顺序排列的,如果首字母相同,则比较下一个字母,以此类推。
与之相对,“逆向字典”是从单词的末尾字母开始比较的。
例如,apple、bee、card 按照普通字典顺序排列为 apple → bee → card。
但在“逆向字典”中,以 d 结尾的 card 排在第 1 位,apple 和 bee 都以 e 结尾,因此比较倒数第二个字母,bee 的倒数第二个字母是 e,apple 的倒数第二个字母是 l,所以 bee 排在第 2 位,apple 排在第 3 位。

图(a):普通字典顺序排列示例
图(b):逆向字典顺序排列示例
请你帮高桥君制作一个“逆向字典”,并将给定的单词按照“逆向字典”顺序排列。输入格式如下,从标准输入读入。
N
s1
s2
⋮
sN
- 第 1 行是一个整数 N (1≤N≤100),表示需要排列的单词数量。
- 第 2 行到第 N+1 行,每行一个字符串,表示需要排列的单词 si。
- 每个单词的长度在 1 到 20 之间,且只包含小写英文字母(
a-z)。 - 输入中不会有重复的单词。
请将输入的单词按照逆向字典顺序,每行输出一个单词,最后输出一个换行符。
例如:
5
chokudai
kensho
imos
yuichirw
ao
输出为:
chokudai
ao
kensho
imos
yuichirw
- 首先,比较每个单词的最后一个字母,分别为 chokudai、kensho、imos、yuichirw、ao 的 i、o、s、w、o,按字母顺序排列为 i、o、o、s、w。
- 由于 kensho 和 ao 的最后一个字母相同(o),需要比较倒数第二个字母。
- kensho 的倒数第二个字母是 h,ao 的倒数第二个字母是 a,a 在 h 之前,所以 ao 排在 kensho 前面。
- 因此,最终顺序为 chokudai、ao、kensho、imos、yuichirw。
再如:
2
dart
art
输出为:
art
dart
- 两个单词从末尾依次比较,每一位都相同,直到 art 已经没有更多字母可比,此时 art 应排在 dart 前面。
输入格式
第 1 行包含一个整数 N,表示单词数量。
接下来的 N 行,每行一个字符串 si,表示需要排列的单词。
输出格式
按逆向字典顺序,每行输出一个单词。最后输出一个换行符。
说明/提示
- 单词数量 1≤N≤100。
- 每个单词长度 1≤∣si∣≤20。
- 单词仅包含小写英文字母。
- 输入中不会有重复单词。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?