题目描述 CMS 有很多很多数据。
为了处理这些数据,vfk决定把这道题所有输入数据都弄出来,每个数据给个编号,比如 acoj1.in acoj1.in, acoj2.in acoj2.in。
这些编号是随机的,可以不连续,比如三组数据分别叫 acoj1.in acoj1.in, acoj114514.in acoj114514.in, acoj1919810.in acoj1919810.in。
文件名形如 题目名 + 数据编号 + " .in .in"。
CMS 要你把这些输入文件按数据编号进行排序。
输入格式 第一行一个正整数 � n,表示输入文件的个数。
接下来 � n 个字符串表示每个输入文件的文件名,形如: 题目名 + 数据编号 + " .in .in",保证:
数据编号一定是正整数且不包含前导零。 数据编号一定互不相同。 题目名仅包含大小写字母和下划线。 所有输入文件的题目名完全一致。 特别的,如果是像 1.in 1.in, 2.in 2.in 这种,我们认为题目名为空,也是允许的 输出格式 共 � n 行,每行一个字符串,表示排序的结果。
输入样例
10
YouAKIOI1.in
YouAKIOI4.in
YouAKIOI3.in
YouAKIOI5.in
YouAKIOI2.in
YouAKIOI9.in
YouAKIOI7.in
YouAKIOI6.in
YouAKIOI8.in
YouAKIOI10.in
输出样例 YouAKIOI1.in
YouAKIOI2.in
YouAKIOI3.in
YouAKIOI4.in
YouAKIOI5.in
YouAKIOI6.in
YouAKIOI7.in
YouAKIOI8.in
YouAKIOI9.in
YouAKIOI10.in
提示 � ≤ 1 0 5 , 字符串长度 ≤ 150 n≤10 5 ,字符串长度≤150。
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
cin >> n;
string f[n+1];
for (int i = 1; i <= n; i++) {
cin >> f[i];
}
sort(f+1, f+1+n);
for (int i = 1; i <= n; i++) {
cout << f[i] << endl;
}
return 0;
}