【MT第四题】

【MT第四题】,第1张

题目描述:

A成了游戏中的营长。他打算给游戏中的士兵们排一个整齐的队。目标是让这些士兵排成整齐的一列。从左到右士兵们的身高逐渐增加,当两个士兵的身高一样的时候,就按照他们名字的字典序进行排列,因为A觉得这样排起来最美观。

形式化地,给出n个士兵的身高(因为是在游戏中,身高可能很离谱)与名字(仅包含小写英文字母,并且我们保证两个不同士兵的名字不同),要将他们按照身高从小到大排序,如果身高相同则按照名字的字典序排序。

字典序:在英文字典中,排列单词的顺序是先按照第一个字母以升序排列(即a、b、c......z的顺序);如果第一个字母一样,那么比较第二个,第三个乃至后面的字母。如果比到最后两个单词不一样长(比如:sigh和sight),那么把短者排在前。

输入描述:

第一行一个正整数n,表示士兵数;

第二行n个空格隔开的正整数h[1,2,...,n],h[i]表示第i个士兵的高度;

第三行n个空格隔开的字符串s[1,2,...,n],s[i]表示第i个士兵的名字,注意,士兵的名字只包含小写英文字母且没有重复的名字。

n<=50000,h[i]<=300,s[i]仅包含小写英文字母且长度不大于10

输出描述:

输出一行,包含n个字符串s’[1,2,...,n],s'[i]表示经过排序后从左到右站在第i个位置的士兵的名字,不同名字间用单个空格隔开。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/739479.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-28
下一篇 2022-04-28

发表评论

登录后才能评论

评论列表(0条)

保存