给你n(n为偶数)个字符串,让你找出一个长度最短且字典序尽量小的字符串,使得一半的字符串小于等于该串,一半的字符串大于该串。

紫薯上说这道题有坑,但其实思路对了就没什么坑。

很明显,只要取夹在中间两个字符串间的最小字符串就行了。可以从小到大枚举字符串的长度,如果该长度下存在满足条件的字符串则返回结果,否则把较小的字符串上对应位的字符加到末尾就行了。

因为想错思路WA了好几次,最后一次WA居然是忘了判断n=0的情况...(为什么我总是完美避开正确答案,QAQ)

 #include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=+;
int n;
string s[N],s1,s2; string solve() {
string ss;
while() {
for(char ch='A'; ch<='Z'; ++ch) {
string t=ss+ch;
if(t>=s1&&t<s2)return t;
}
ss.push_back(s1[ss.length()]);
}
} int main() {
ios::sync_with_stdio();
while(cin>>n&&n) {
for(int i=; i<n; ++i)cin>>s[i];
sort(s,s+n);
s1=s[n/-],s2=s[n/];
cout<<solve()<<endl;
}
return ;
}

最新文章

  1. geotrellis使用(二十七)栅格数据色彩渲染
  2. SqlServer try catch 捕获不到的一些错误及解决方法(转载)
  3. iOS十六进制和字符串的相互转换
  4. 正确理解JavaScript中的this关键字
  5. web.xml 模板和Servlet版本
  6. 例说C#深拷贝与浅拷贝
  7. sqlserver 批量删除相同前缀名的表
  8. 【转】wget(二)
  9. MyEclipse打不开 报xxxxxx. log。
  10. 转 the best for wcf client
  11. 本周HTML5的知识点
  12. quartz 使用问题,小坑
  13. 《深入理解java虚拟机》读书笔记——垃圾收集与内存分配策略
  14. LeetCode: 2_Add Two Numbers | 两个链表中的元素相加 | Medium
  15. Linux 系统缓存机制学习
  16. [Android] JNI中的Local Reference
  17. Python基本数据类型以及字符串
  18. ASP.NET Web API 框架研究 Web Host模式路由及将请求转出到消息处理管道
  19. border做三角符号
  20. 《构建之法》第四&amp;十七章读书笔记

热门文章

  1. 反射,hashlib模块,正则匹配,冒泡,选择,插入排序
  2. Loadrunder脚本篇——Run-time Settings之Miscellaneous
  3. gh-ost使用手册
  4. Java变量修饰符volatile
  5. 主攻ASP.NET.4.5.1 MVC5.0之重生:系统角色与权限(二)
  6. 九、搭建备份服务器 使用rsync服务
  7. 《深度学习框架PyTorch:入门与实践》的Loss函数构建代码运行问题
  8. Web项目java.lang.OutOfMemoryError: PermGen space异常解决
  9. poj 1265 Area【计算几何:叉积计算多边形面积+pick定理计算多边形内点数+计算多边形边上点数】
  10. Centos6.5安装glusterfs3.6.2