拼数(C++)】的更多相关文章

P1012 拼数 输入输出样例 输入样例 3 13 312 343 输出样例 34331213 注意 当你输入: 6321 32 407 135 13 217 应该输出: 4073232121713513 代码: #include<iostream> #include<cstdio> #include<cmath> #include<algorithm> #include<cstring> #include<string> using…
(今天yuezhuren大课间放我们出来了……) (另外今天回了两趟初中部) 拼数[传送门] 洛谷算法标签: (然鹅这两个学的都不好,能过真的how strange) 开始的时候没读题啊,直接暴力sort给数据(int型的)排序然后从大到小输出了……(居然还ac了一个点) 然后我去仔细读了题,发现当这个数字首字母越大时(相同的话比下一位),位置越靠前,组成的数就越大,因为字符长度不确定,然后我在想是不是用字符类型的比较好做???? 好了又半途不想写了   直接上代码吧 #include<iost…
P1012 拼数 标签 字符串 排序 NOIp提高组 1998 云端 难度 普及- 时空限制 1s / 128MB 题目描述 设有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数. 例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213 又如:n=4时,4个整数7,13,4,246联接成的最大整数为:7424613 输入输出格式 输入格式: 第一行,一个正整数n. 第二行,n个正整数. 输出格式: 一个正整数,表示最大的整数 输入输出样例 输入样例#1:…
NC16783 [NOIP1998]拼数 题目 题目描述 设有 \(n\) 个正整数(\(n ≤ 20\)),将它们联接成一排,组成一个最大的多位整数. 例如:\(n=3\) 时,\(3\) 个整数 \(13\),\(312\) ,\(343\) 联接成的最大整数为:\(34331213\) 又如:$n=4 $ 时,\(4\) 个整数 \(7\) ,\(13\) ,\(4\) ,\(246\) 联接成的最大整数为:\(7424613\) 输入描述 第一行,一个正整数 \(n\) . 第二行,\(…
题目:https://www.luogu.org/problemnew/show/P1012 今天真是长了见识.这道题做了十几分钟,用模拟愣是调不出来.直到我看了题解——(当场去世)…… 题的意思是n个数拼出一个最大的数,我竟真的傻傻的输进n个数..... 用string 轻松解决!!! 用sort排列,然后直接从1到n输出,秒AC..... 关键是关于string的加法性质:ac+cd=abcd; 所以把cmp写一下就好了: 上代码,一看全明白!!! #include<iostream> #…
题目描述 Description 设有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数. 例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213 又如:n=4时,4个整数7,13,4,246联接成的最大整数为:7424613  输入输出格式 Input/output 输入格式: 第一行,一个正整数n. 第二行,n个正整数. 输出格式: 一个正整数,表示最大的整数  输入输出样例 Sample input/output 样例测试点#1 输入样例: 3131…
又是大水题... 这一题过水,令人无法接受...... 但是如果我们不知道string的一个神奇的性质的话,就会很难受. 我一开始手写 < 号,但是发现如果 string a 的前一部分恰好是 string b 时,就不好处.于是我跑去看题解,发现大佬们的神奇做法: a + b > b + a 666啊! 下面讲解关于string的 + 和 < 运算符: + : 把两个字符串拼起来. < : 字典序比较. 这两组数据可以卡掉a > b 37 3 30 3 然后我们就水 啊 水…
十分蒟蒻...(还是看别人的博才过的...) 题解 #include<cstdio>#include<cstring>#include<algorithm>#include<iostream>using namespace std;string c[21],b[21];int n;bool cmp(string a,string b)//cmp的核心!!!!!(因为这个一直75分... (不要想着从小到大牌再倒着输出,这不行dei)){return a+b&…
[题解] 我们要做的就是把这些数排序.排序的时候判断两个数是否交换的方法,就是把这两个数相接形成两个长度相同的数字,比较这两个数字的大小. #include<cstdio> #include<algorithm> #include<cstring> #define N 200010 #define rg register #define LL long long using namespace std; int n,m; ]; inline int read(){ ,f…
问题: 设有n个正整数,将他们排成一排,组成一个最大的多位整数. INPUT: 第一行,正整数的个数n 第二行,n个正整数 OUTPUT: 一个正整数,表示最大的整数. 输入样例: 3 13 312 343 样例输出: 34331213 思路: 如果我们把每个输入的正整数当作正数来处理的话, 我们会发现我们很难处理. 因为存在情况一个数是另一个数的前缀的情况. 这个时候不知道要比较多少位. 比如说,5个正整数 756  212 2123 21231. 这时就很麻烦. 而如果我们把这些数字当作字符…