AlgoMooc
← 返回题库

P2553. 磁盘容量

中等通过率 51% · 提交 518 · 通过 264
排序字符串模拟

小慕在整理一批磁盘的容量数据,常用的单位有 M、G、T,它们之间的换算关系是 1T = 1024G,1G = 1024M。 现在小慕拿到了 n 块磁盘的容量,需要将它们按从小到大的顺序进行。 例如,小慕手中有 5 块磁盘,容量分别为 1T、20M、3G、10G6T、,排序后的结果为 20M、3G、3M12G9M、1T、10G6T。 需要注意的是,单位可以重复出现,例如 3M12G9M 表示的容量与 12M12G 相等。 所谓稳定排序,指的是对于大小相同的元素,应该按照它们在原先数组中的位置进行排序。

提示:带虚线的词点一下有通俗解释。

输入描述

输入第一行包含一个整数n,2 <= n <= 100,表示磁盘的个数。 接下来的 n 行,每行一个字符串,2 < 长度 < 30,表示磁盘的容量,由一个或多个格式为MV的子串组成,其中M表示容量大小,V表示容量单位,例如20M、1T。 磁盘容量的范围是1 ~ 1024的正整数,单位M、G、T。

输出描述

输出n行,表示n块磁盘容量排序后的结果

示例

示例 1

输入

3
1G
2G
1024M

输出

1G
1024M
2G

说明:稳定排序要求相等值保留原来位置。

示例 2

输入

3
2G4M
3M2G
1T

输出

3M2G
2G4M
1T

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解(训练营专属)

登录后查看题目图解

题目图解为训练营学员专属内容,请先登录。

微信扫码登录还不是训练营学员?了解训练营 →
写完代码点「提交」,将对全部测试用例判题。