问题 C: 软件版本排序

问题 C: 软件版本排序

时间限制: 1 Sec  内存限制: 128 MB
提交: 8  解决: 4
[提交] [状态] [讨论版] [命题人:]

题目描述

计算机软件版本通常被用来区分某种软件在不同时间的发布。大部分软件版本号都是用“.”分隔的非负数的序列。对两个不同的版本A = a1.a2.a3…an和B = b1.b2.b3…bm,如果下面两个条件之一成立,我们认为版本A要比版本B新:

  1. 对某个i,我们有:对所有j < i, ai > bi 和aj = bj;

  2. n比m大,而且对所有i < m, ai = bi。

(ai和bi都不超过2^32-1)

在这个问题里,你要对给定的一组版本号,按照上面的定义从旧到新排序。


输入

输入文件第一行是一个整数N(N<=20),表示要排序的版本数。接下来的N行每行一个版本号。每个版本号是长度不超过50的字符串。

输出

将排好序的结果以每行一个版本号输出。


样例输入

4
3.0.5
1
2.4
2.4.6

样例输出

1
2.4
2.4.6
3.0.5

[提交][状态]