51nod 1097 拼成最小的数 思维题 t1+t2<t2+t1
来源:互联网 发布:ubuntu 休眠 编辑:程序博客网 时间:2024/04/30 14:45
第1行:1个数N。(2 <= N <= 10000)第2 - N + 1行:每行1个正整数。(1 <= A[i] <= 10^9)
输出拼在一起的最小整数。由于数据量太大,请以1000个字符为单位,输出到一行里,最终剩余的不足1000个字符的部分,输出到单独1行。
这道题学到一点。
31和312该如何搭配使得数最小呢?
如果只是简单的排序是不对的。
我们应该
bool cmp(string t1,string t2)
{
return t1+t2<t2+t1
}
比较他们两个连接起来的值
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include<algorithm>
#include<stack>
#include<math.h>
using namespace std;
string str[11000];
bool cmp(string t1,string t2)
{
return t1+t2<t2+t1;
}
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>str[i];
}
sort(str,str+n,cmp);
string st=str[0];
for(int i=1;i<n;i++)
{
st+=str[i];
}
int lenn=st.length();
for(int i=0;i<lenn;i++)
{
if(i%1000==0&&i!=0)
{
cout<<endl;
}
cout<<st[i];
}
cout<<endl;
}
- 51nod 1097 拼成最小的数 思维题 t1+t2<t2+t1
- 51nod 1097 拼成最小的数 思维
- srm 526 T1 && T2
- srm527 T1 && T2
- sm 528 T1 && T2
- SRM 608 T1 && T2
- BeanUtils<T1, T2> beanToBean
- 【队内胡策 11.1】 T1 T2
- 【队内胡策 11.3】 T1 T2
- 磁共振中的T1, T2 和 T2*的原理和区别
- 51NOD 1097 拼成最小的数
- 51nod 1097 拼成最小的数
- 51nod 1097 拼成最小的数
- 51Nod 1097 拼成最小的数
- 51nod 1097 拼成最小的数
- 51nod 1097 拼成最小的数
- 51nod 1097 拼成最小的数
- Dictionary<T1,T2>和Hashtable的异同
- VtigerCRM重置管理员密码
- 51Nod 1082 与7无关的数 (打表)
- Jenkins的使用(一)---安装
- try-catch
- C#中10个你真的应该学习(和使用!)的功能
- 51nod 1097 拼成最小的数 思维题 t1+t2<t2+t1
- python 中,如何在一个函数中调用另一个函数返回的多个值中的一个?
- mac android-studio解决adb命令not found
- 分布式事务详解
- N的结成
- Parallel&Distributed Algorithm-3
- 编程中的细节问题(一)
- mysql 查询不等于问题
- 2017-11-6离线赛总结