题目链接:最小字符串

http://lx.lanqiao.cn/problem.page?gpid=T3001#submitpanel

问题描述
  给定一些字符串(只包含小写字母),要求将他们串起来构成一个字典序最小的字符串。
输入格式
  第一行T,表示有T组数据。
  接下来T组数据
  每组第一行一个正整数n,表示字符串个数。
  接下来n行,每行一个字符串(长度不超过100)。
输出格式
  T行,每行一个字符串。

样例输入
1
3
a
b
c
样例输出
abc

数据规模和约定
T<=7000,n<=100;

思路如下

此题容易看出是一个贪心题, 对于字符串S1, S2
若将 S1 排在 S2 前 ,连接得到 字符串 S3 = S1 + S2 (1)
再将 S2 排在 S1 前 ,连接得到 字符串 S4 = S2 + S1 (2)
若S3 的字典序小于S4 说明 方案(1) 更优那么我们就依次排序
反之亦然

代码如下:

#include<iostream>
#include<string>
#include<algorithm>
#include<vector>
using namespace std;const int N = 1e3+10;bool cmp(string a, string b){string t1=a+b,t2=b+a;if(t1 < t2) return true;else return false;return true;
}int main(){std::ios::sync_with_stdio(false);//第十个样例会卡输入,得关闭同步输入流int t;cin >> t;while(t--){int n;cin >> n;string ans, s[N];for(int i = 0; i < n; i++) cin >> s[i];sort(s,s+n,cmp);for(int i = 0; i < n; i++) ans += s[i];cout << ans << endl;}return 0;
}

最小字符串(蓝桥杯试题 算法提高)相关推荐

  1. 蓝桥杯试题 算法提高 扶老奶奶过街(C语言)

    试题 算法提高 扶老奶奶过街(C语言) 资源限制 时间限制:1.0s 内存限制:256.0MB 一共有5个红领巾,编号分别为A.B.C.D.E,老奶奶被他们其中一个扶过了马路. 五个红领巾各自说话: ...

  2. 蓝桥杯 试题 算法提高 P0402 猴子吃桃问题 Java

    试题 算法提高 P0402 资源限制 时间限制:1.0s   内存限制:256.0MB 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将剩下的桃子吃掉一半,又多吃了一个. ...

  3. 蓝桥杯试题 算法提高 转圈游戏 C/C++

    试题 算法提高 转圈游戏 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 n 个小伙伴(编号从 0 到 n-1)围坐一圈玩游戏.按照顺时针方向给 n 个位置编号,从0 到 n-1.最 ...

  4. 蓝桥杯试题 算法提高 Cutting Chains

    资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 什么!Anna Locke最近买了几个链环,并且其中的一些链环连接到了一起.它们是由zorkium做成的,这是一种在上世纪经常用来加工 ...

  5. 蓝桥杯 试题 算法提高 阴谋(C++)

    阴谋 题目浏览 算法代码 核心思路 题目浏览 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 第四次圣杯战争开始了. 为了收集敌人的情报,言峰绮礼命令他的使魔Assassin将自己的 ...

  6. 蓝桥杯试题 算法提高 数组求和

    题干 我人比较蠢想不出好的解决方案,只能采用暴力破解才能维持的了生活这样.. 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 输入n个数,围成一圈,求连续m(m<n)个数的和最 ...

  7. 蓝桥杯试题 算法提高 Monday-Saturday质因子

    资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 这个问题是个简单的与数论有关的题目,看起来似乎是"求正整数的所有质因子",但实际上并不完全是这样. 本题中需要定义 ...

  8. 蓝桥杯试题 算法提高 书院主持人

    书院主持人 问题描述 北大附中书院有m个同学,他们每次都很民主地决策很多事情.按罗伯特议事规则,需要一个主持人.同学们民主意识强,积极性高,都想做主持人,当然主持人只有一人.为了选出主持人,他们想到了 ...

  9. 蓝桥杯试题 算法提高 编程求解根号3简单算法

    public class Main {public static void main(String[] args) {double a=Math.sqrt(3);System.out.printf(& ...

最新文章

  1. 通过GetProcAddress函数动态调用dll中地函数,是否必须通过extern C声明导出函数?(转)...
  2. python 数据结构-字典
  3. 【js】鼠标跟随效果
  4. git 创建 本地 裸 仓库
  5. 小程序wx.createInnerAudioContext()获取不到时长问题
  6. java 判断对象是否是xml格式_java对象与xml格式之间的转换
  7. Javascript基础(二)
  8. appium启动APP配置参数:
  9. svm分类代码_SVM的原理及实现垃圾邮件分类代码解析:
  10. 初识WEB:输入URL之后的故事
  11. 190710每日一句
  12. 如何从官网下载oracle客户端,Oracle11g客户端client的下载与安装
  13. get与post的区别
  14. LLVM LLD PE 格式分析 (COFF)
  15. 知道python网课答案_分析最近的一个网课答案查询2.0
  16. MATLAB添加噪声
  17. 条码固定资产管理系统的作用,固定资产条码化管理
  18. tiktok海外抖音发视频0播放怎么办?
  19. 笔记本wifi热点设置
  20. U盘不识别,磁盘管理器显示无媒体

热门文章

  1. i5 1135g7和i5 9300h 相差多少
  2. 中央企业数字化转型的作用及意义
  3. 新手炒外汇,如何防止炒外汇被坑?
  4. shuffle机制详解
  5. uniapp 调用手机相机拍照实现图片上传
  6. 安装Node-sass的时候,报ensuring that file exists: C:\Python27\python.exe
  7. Win10 右键新建没有WORD文档创建菜单?
  8. mac:Go安装和配置+GoLand安装和使用之完整教程
  9. 本地图片转换成网络图片
  10. php香港主机,PHP香港主机选购指南