zoukankan      html  css  js  c++  java
  • 拼数(sort,cmp)

    链接:https://ac.nowcoder.com/acm/problem/16783
    来源:牛客网

    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 262144K,其他语言524288K
    64bit IO Format: %lld

    题目描述

    设有n个正整数(n ≤ 20),将它们联接成一排,组成一个最大的多位整数。
    例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213
    又如:n=4时,4个整数7,13,4,246联接成的最大整数为:7424613

    输入描述:

    第一行,一个正整数n。
    第二行,n个正整数。

    输出描述:

    一个正整数,表示最大的整数
    示例1

    输入

    3
    13 312 343

    输出

    34331213
     1 #include <bits/stdc++.h>
     2 typedef long long LL;
     3 #define pb push_back
     4 #define mst(a) memset(a,0,sizeof(a))
     5 const int INF = 0x3f3f3f3f;
     6 const LL LINF = 0x3f3f3f3f3f3f3f3f;
     7 const double eps = 1e-8;
     8 const int mod = 1e9+7;
     9 const int maxn = 1e5+10;
    10 using namespace std;
    11 
    12 vector<string> vt;
    13 
    14 bool cmp(string a,string b)
    15 {
    16     return a+b > b+a;
    17 }
    18 
    19 int main()
    20 {
    21     #ifdef DEBUG
    22     freopen("sample.txt","r",stdin); //freopen("data.out", "w", stdout);
    23     #endif
    24     
    25     int n;
    26     scanf("%d",&n);
    27     for(int i=1;i<=n;i++)
    28     {
    29         string t;
    30         cin>>t;
    31         vt.push_back(t);
    32     }
    33     sort(vt.begin(), vt.end(), cmp);
    34     string ans="";
    35     for(auto it : vt)
    36         ans += it;
    37     cout<<ans<<"
    ";
    38     
    39     return 0;
    40 }

    -

  • 相关阅读:
    linux shell执行远程计算机上的命令或者脚本(ssh)
    人到中年,愿我们的人生无悔
    资料
    新博客
    移植ok6410
    pm剩余要看的内容
    kernel boot
    regulator
    pm
    bochs安装一系列问题
  • 原文地址:https://www.cnblogs.com/jiamian/p/13195626.html
Copyright © 2011-2022 走看看