zoukankan      html  css  js  c++  java
  • 文字列大好きいろはちゃんイージー / Iroha Loves Strings (ABC Edition) AtCoder

    文字列大好きいろはちゃんイージー / Iroha Loves Strings (ABC Edition)

     AtCoder - 1978 

    Problem Statement

     

    Iroha has a sequence of N strings S1,S2,…,SN. The length of each string is L.

    She will concatenate all of the strings in some order, to produce a long string.

    Among all strings that she can produce in this way, find the lexicographically smallest one.

    Here, a string s=s1s2s3...sn is lexicographically smaller than another string t=t1t2t3...tm if and only if one of the following holds:

    • There exists an index i(1≦imin(n,m)), such that sj=tj for all indices j(1≦j<i), and si<ti.
    • si=ti for all integers i(1≦imin(n,m)), and n<m.

    Constraints

     

    • 1≦N,L≦100
    • For each i, the length of Si equals L.
    • For each iSi consists of lowercase letters.

    Input

     

    The input is given from Standard Input in the following format:

    N L
    S1
    S2
    :
    SN
    

    Output

     

    Print the lexicographically smallest string that Iroha can produce.

    Sample Input 1

     

    3 3
    dxx
    axx
    cxx
    

    Sample Output 1

     

    axxcxxdxx
    

    The following order should be used: axxcxxdxx.

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<string>
    #include<algorithm>
    #include<cmath>
    #include<utility>
    #include<set>
    #include<vector>
    #include<map>
    #include<queue>
    #include<stack>
    #define maxn 1010
    #define INF 0x3f3f3f3f
    #define LL long long
    #define ULL unsigned long long
    #define E 1e-8
    #define mod 1000000007
    #define P pair<int,int>
    using namespace std;
    //n个  长度是L
    int main()
    {
        int n,l;
        while(cin>>n>>l)
        {
            string s[105];
            int a[105];
            for(int i = 0 ; i < n ; i++ )
            {
                cin>>s[i];
                a[i] = (int)s[i][0];
                //cout<<a[i]<<endl;
            }
            sort(s+0,s+n);
            for(int j = 0 ; j < n ; j++ )
            cout<<s[j];
            }
    }
  • 相关阅读:
    android开发学习4
    macOS login: Could not determine audit condition 问题解决
    java代码编程规范
    学习进度报告(二)
    学习进度报告(一)
    android开发笔记
    数组
    软件工程第二周开课博客
    第一周学习总结
    用户体验评价
  • 原文地址:https://www.cnblogs.com/upstart/p/8982412.html
Copyright © 2011-2022 走看看