天天看点

华为OJ——字串的连接最长路径查找

字串的连接最长路径查找

题目描述

给定n个字符串,请对n个字符串按照字典序排列。 

输入描述:

输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。

输出描述:

数据输出n行,输出结果为按照字典序排列的字符串。

输入例子:

9

cap

to

cat

card

two

too

up

boat

boot

输出例子:

boat

boot

cap

card

cat

to

too

two

up

解答代码:

#include<iostream>
#include<cstring>
#include<string>
#include<algorithm>
#include<set>
#include<vector>
using namespace std;

bool com(const string s1,const string s2)
{
    return s1 < s2;
}

int main()
{
    int n,i;
    vector<string> v;
    string ss;
    while(cin>>n)
    {
        v.clear();
        for(i=0; i<n; i++)
        {
            cin>>ss;
            v.push_back(ss);
        }
        sort(v.begin(),v.end(),com);
        for(i=0; i<v.size(); i++)
        {
            cout<<v[i]<<endl;
        }
    }
}
           

继续阅读