luogu P1107 最大整数

题目描述

设有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
4
7 13 4 246

输出样例#1:

34331213
7424613
sort,cmp
#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
#define N 

string a[100003];
bool cmp(string a,string b)
{
    return a+b>b+a;
}

int main()
{
    int n;
    while(scanf("%d",&n)==1)
    {
        for(int i=1;i<=n;i++)
        {
            cin>>a[i];
        }
        sort(a+1,a+n+1,cmp);
        for(int i=1;i<=n;i++)
        {
            cout<<a[i];
        }
        cout<<endl;
    }
    return 0;
}
				
时间: 2024-08-08 00:48:59

luogu P1107 最大整数的相关文章

洛谷——P1107 最大整数

P1107 最大整数 题目描述 设有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 输出样例#1: 复制 34331213 输入样例#2: 复制 4 7 13 4 2

P1107 最大整数

题目描述 设有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 4 7 13 4 246 输出样例#1: 34331213 7424613 stl大法好啊,,总感觉这题在哪儿

Luogu P1356 【数列的整数性】题解

对于什么模什么整除之类的DP题我总是很慌张 但是像我这种蒟蒻都过了这道题是不是? 对于这种能否整除的DP题目,我们只需要考虑前i个数通过一定的组合,mod k 能否 == j,这就是我们要写的`状态` bool f[i][j]表示能否通过一定的组合将前i个数 mod k = j; 显而易见,最后的答案是能否通过一定的组合将前n个数 mod k = 0也就是f[n][0]是否为true; 当状态为f[i][j]时,若状态f[i][(j +- a[i] % k + k) % k] 为true,则f[

[luogu P1967][NOIp2013]P1967 货车运输

题目描述 A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 q 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物. 输入输出格式 输入格式: 输入文件名为 truck.in. 输入文件第一行有两个用一个空格隔开的整数 n,m,表示 A 国有 n 座城市和 m 条道 路. 接下来 m 行每行 3 个整数 x. y. z,每两个整数之间用一个空格隔开,表示从 x 号城市到 y 号城市有一条限重为 z

luogu P1146 硬币翻转

题目描述 在桌面上有一排硬币,共N枚,每一枚硬币均为正面朝上.现在要把所有的硬币翻转成反面朝上,规则是每次可翻转任意N-1枚硬币(正面向上的被翻转为反面向上,反之亦然).求一个最短的操作序列(将每次翻转N-1枚硬币成为一次操作). 输入输出格式 输入格式: 输入只有一行,包含一个自然数N(N为不大于100的偶数). 输出格式: 输出文件的第一行包含一个整数S,表示最少需要的操作次数.接下来的S行每行分别表示每次操作后桌上硬币的状态(一行包含N个整数(0或1),表示每个硬币的状态:0――正面向上,

luogu P2740 [USACO4.2]草地排水Drainage Ditches

P2740 [USACO4.2]草地排水Drainage Ditches 2017-09-17 题目背景 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没的烦恼(不用担心,雨水会流向附近的一条小溪).作为一名一流的技师,农夫约翰已经在每条排水沟的一端安上了控制器,这样他可以控制流入排水沟的水流量. 题目描述 农夫约翰知道每一条排水沟每分钟可以流过的水量,和

luogu P2056 采花

题目描述 萧芸斓是 Z国的公主,平时的一大爱好是采花. 今天天气晴朗,阳光明媚,公主清晨便去了皇宫中新建的花园采花.花园足够大,容纳了 n 朵花,花有 c 种颜色(用整数 1-c 表示) ,且花是排成一排的,以便于公主采花. 公主每次采花后会统计采到的花的颜色数, 颜色数越多她会越高兴! 同时, 她有一癖好,她不允许最后自己采到的花中,某一颜色的花只有一朵.为此,公主每采一朵花,要么此前已采到此颜色的花,要么有相当正确的直觉告诉她,她必能再次采到此颜色的花. 由于时间关系,公主只能走过花园连续的

『Luogu OJ』『C++』Level 1-3 循环!循环!循环!

关卡1-3,6道题  循环!循环!循环! 任务说明:计算机最不怕的就是重复.你让它做10000次同样的事它也不怕啦,但是让他做1亿亿次的话…… 要完成这个任务,请将以下的题目都AC掉(即通过这道题目): 1. 三连击 P1008 2.级数求和 P1035 3.数字反转 P1307 4.小玉在游泳 P1423 5.小鱼的航程(改进版) P1424 6.计数问题 P1980 成就达成时间:2015-07-15 21:54 什么?你问我这么水的题怎么拖了这么久? 首先今天课比较多…… 其次被strin

【原创】洛谷 LUOGU P3373 【模板】线段树2

P3373 [模板]线段树 2 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.将某区间每一个数乘上x 3.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含三个整数N.M.P,分别表示该数列数字的个数.操作的总个数和模数. 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值. 接下来M行每行包含3或4个整数,表示一个操作,具体如下: 操作1: 格式:1 x y k 含义:将区间[x,y]内每个数乘上k 操作2: 格式:2 x