字符串排序

题目内容

题目描述

我们要将一些只含小写字母的字符串进行排序,但是我重新定义了字符串的排序规则。对于每个字符串定义一个“26进制哈希值”,字符串的“26进制的哈希值”作为比较依据,字符串的“26进制的哈希值”越大的字符串排在越后面。
例如 "abc"的“26进制的哈希值”为
     "abc"=1*26^2+2*26+3,
a代表1   b代表2  c代表3 ...  z代表26
最后一位的权重为26^0也就是1,倒数第二位的权重为26^1,也就是26,倒数第三位的权重为26^3  ... 以此类推 ...  第一位的权重为26^(size-1),size是字符串的长度。
最后各位字母与权重的乘积之和是该字符串的“26进制的哈希值”。
注意:字符串可能很长,如果hash大于1000000007则将hash值对1000000007取模。

输入描述

第一行一个数字n(n<500000)表示有n个字符串,接下来n行每行输入一个字符串。

输出描述


将排序好的字符串按哈希值升序输出在n行中,如果字符串的哈希值相同则按原始的字符排序规则升序排列,同时保证输入不会有重复的字符串。

样例输入

3 a c aa

样例输出

a c aa

提示

提交评测
请登录后再操作

题目描述

字符串排序
1424
0
08Level5
99
25
25%
证书查询 x
请输入证书编号:

请输入正确的证书编号

学员姓名:孙兴民

课程:Scratch Level 1

发证日期:2019.08.15

证书查询

该证书不存在