【日常学习】【搜索/排序+字符串】洛谷1012/1107 最大整数题解

46 篇文章 0 订阅
18 篇文章 0 订阅

转载请注明出处 [ametake版权所有]http://blog.csdn.net/ametake欢迎来看

洛谷1107 最大整数

本题地址: http://www.luogu.org/problem/show?pid=1107

题目描述

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

输入输出格式

输入格式:


n个数

输出格式:

连接成的多位数

输入输出样例

输入样例#1:
3
13 312 343
4
7 13 4 246
输出样例#1:
34331213
7424613
看看效果吧 我不吐槽洛谷题目摘要这悲了个剧的排版= =实在是不敢恭维


这题目原本使用搜索或者贪心做的?总之挂了无数次···然后看了一位仁兄的解释才发现选择排序真是个神器= =然而我并不相信,于是擅自尝试了冒泡排序= =虽然冒泡排序我写错了但是终究是错的,真正的冒泡对不对大家自己实验吧 

冒泡可能不对因为冒泡把最大的往后放 而插入排序实在无力尝试···


其实原理很简单,就是把两个字符串放在一起正着排反着排比较  按最大数的顺序排列 两两比较

代码 ~

//arra 排数问题 字符串处理与数学
//coded by ametake 非原创= =
#include
   
   
    
    
#include
    
    
     
      
using namespace std;

const int maxn=100+10;
string a[maxn];
int n;

int main()
{
	freopen("arra.in","r",stdin);
	freopen("arra.out","w",stdout);
	cin>>n;
	for (int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	for (int i=1;i
     
     
    
    
   
   


——悲欢离合总无情,一任阶前点滴到天明。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值