2018.8.19 2018暑假集训之maxnum
昨天去做志愿服务去了没写成Q_Q
今天再来一道
先放题面描述
设有n个正整数(n<=20),将它们联成一排,组成一个最大的多位数
设有n个正整数(n<=20),将它们联成一排,组成一个最大的多位数。 例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213 又如:n=4时,4个整数7,13,4,246联接成的最大整数为7424613
程序输入:n 以及n个数
程序输出:n个数联接成的多位数。
样例输入: 4
7 13 4 246
样例输出:7424613
做了这个题突然感觉所有题目的样例都十分的水
想到字符串从大到小排序输出有没有?
然而这个题正解并不是这样(一个点也过不了)
举个栗子
321和32哪个应该排在前面??
显然32应该排在前面所以不能用字典序排序
然而我们可以换一种排序方法
简而言之就是枚举哪个串放在前面的字典序最大(因为32132和32321位数一样)
上代码
#include<iostream>
#include<algorithm>
using namespace std;
string a[];
int n;
bool flag1;
bool cmp(string,string);
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
{
cin>>a[i];//数据太小cin就能过
if(a[i]!="")flag1=;//处理全都是0的情况,避免输出一大堆0(然鹅好像并没有这种数据)
}
sort(a+,a+n+,cmp);
if(!flag1)putchar('');
else for(int i=;i<=n;i++)cout<<a[i];
return ;
}
bool cmp(string a,string b)
{
return a+b>b+a;//这里是重点!!
//连接两个字符串后得到的两个新串明显位数一样,所以可以直接比较字典序
//注意大的在前!!
}
满满是坑的一道题啊
大家以后一定想好再写
2018.8.19 2018暑假集训之maxnum的更多相关文章
- 【欧拉回路+最小生成树】SD开车@山东2018省队一轮集训day1
目录 [欧拉回路+最小生成树]SD开车@山东2018省队一轮集训day1 PROBLEM 题目描述 输入 输出 样例输入 样例输出 提示 SOLUTION CODE [欧拉回路+最小生成树]SD开车@ ...
- IDC Digital Transition Annual Festival(2018.10.19)
时间:2018.10.19地点:北京万达文化酒店
- 2018.10.19浪在ACM 集训队第一次测试赛
2018.10.19浪在ACM 集训队第一次测试赛 待参考资料: [1]:https://blog.csdn.net/XLno_name/article/details/78559973?utm_so ...
- 20172319 2018.10.19《Java程序设计教程》第7周课堂实践(补写博客)
20172319 2018.10.19 <Java程序设计教程>第7周课堂实践 课程:<程序设计与数据结构> 班级:1723 学生:唐才铭 学号:20172319 指导老师:王 ...
- AI Summit(2018.07.19)
AI Summit 时间:2018.07.19地点:北京丽都皇冠假日酒店
- STL 入门 (17 暑假集训第一周)
快速全排列的函数 头文件<algorithm> next_permutation(a,a+n) ---------------------------------------------- ...
- 2015UESTC 暑假集训总结
day1: 考微观经济学去了…… day2: 一开始就看了看一道题目最短的B题,拍了半小时交了上去wa了 感觉自己一定是自己想错了,于是去拍大家都过的A题,十分钟拍完交上去就A了 然后B题写了一发暴力 ...
- Burn Down Chart(2018.6.4~2018.6.10)
Burn Down Chart (2018.6.4~2018.6.10) 娄雨禛[前端部分] 曾子轩[后端部分+燃尽图] 前端 1. 娄雨禛+李鑫 1)在总工程中完成跳转,实现图片显示,并发布到Git ...
- [转]Adobe CC 2018 下载链接 Creative Cloud 2018 - Creative Cloud 2018 – Adobe CC 2018 Download Links
Creative Cloud 2018 – Adobe CC 2018 Download Links – ALL Languages Adobe CC 2018Direct Downloads Win ...
随机推荐
- CefSharp For WPF自定义右键菜单栏
原文:CefSharp For WPF自定义右键菜单栏 初始化 <!--浏览器--> <cefSharpWPF:ChromiumWebBrowser Name="webBr ...
- Angular升级流程
执行命令 ng update @angular/cli --migrate-only --from=1.7.1 npm install --save-dev @angular/cli@latest 注 ...
- 用MVVM模式开发中遇到的零散问题总结(4)——自制摄像头拍摄大头贴控件
原文:用MVVM模式开发中遇到的零散问题总结(4)--自制摄像头拍摄大头贴控件 一直有个疑问,为什么silverlight对摄像头支持这么好,WPF却一个库都没有....于是我各种苦恼啊,各种Code ...
- wpf 复制/剪切到本地系统剪切板中以供右键粘贴用
原文:wpf 复制/剪切到本地系统剪切板中以供右键粘贴用 http://www.cnblogs.com/yhdkzy/archive/2012/11/27/2790655.html /// & ...
- murmurhash2算法 和 DJB Hash算法是目前最流行的hash算法
murmurhash2算法 和 DJB Hash算法是目前最流行的hash算法 1.DJB HASH算法 1 2 3 4 5 6 7 8 9 10 11 /* the famous DJB Hash ...
- lvcreate命令
lvcreate Command Examples on Linux : 1. The following command creates a logical volume 15 gigabytes ...
- Qt4.85静态编译配置VS动态编译(非常详细的图文教程)
http://www.qter.org/forum.php?mod=viewthread&tid=1409&extra=page%3D1&page=1
- How to trim and edit videos in Photos for OS X
Don't let the name fool you, Photos for OS X also stores all your videos. Whether you synced them fr ...
- WCF学习--我的第一个WCF例子
Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口. 通信双方的沟通方式,由合约来订定.通信双方所 ...
- Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核
Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...