题目:题目链接

思路:排序后处理到第一个不同的字符,贪心一下就可以了

AC代码:

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <string>
#include <vector>
#include <map>
#include <set> #define FRER() freopen("in.txt", "r", stdin)
#define FREW() freopen("out.txt", "w", stdout) #define INF 0x3f3f3f3f using namespace std; int main()
{
//FRER();
//FREW();
vector<string> vec;
string str, ptr;
int n;
while(cin >> n && n) {
vec.clear();
for(int i = ; i < n; ++i) {
cin >> str;
vec.push_back(str);
}
sort(vec.begin(), vec.end());
int b = n / , a = b - ;
str = vec[a];
ptr = vec[b];
int len = min(str.length(), ptr.length());
bool ok = true;
string s = "", tmp;
for(int i = ; i < len; ++i) {
if(str[i] == ptr[i])
s += str[i];
else {
tmp = s + (char)(str[i] + );
if(tmp == ptr) {
s += str[i++];
while(i < str.length() - && str[i] == 'Z')
s += str[i++];
if(i < str.length() - )
s += (char)(str[i] + );
else
s = str;
}
else {
if(tmp.length() == str.length())
s = str;
else
s = tmp;
}
break;
}
}
cout << s << endl;
}
return ;
}

最新文章

  1. 个人对B/S项目的一些理解(二)
  2. 5-26课堂作业——组员投票Alpha版存在的问题
  3. android之拍照与摄像
  4. LoadRunner 场景运行error的几种情况
  5. vIDC v2.0 强大的端口转发神器使用总结-开放内网tfs代码服务
  6. jQuery无刷新上传之uploadify简单试用
  7. 如何搭建redis扩展-Yii中文网
  8. 前端MVC框架对比
  9. 检查Oracle 中死事务的语句
  10. bc命令详解与实例
  11. lesson6:java线程中断
  12. 中标麒麟(linux)下Qt调用python数据转换
  13. go不使用工具包将大写字符转成小写字符的方法
  14. PAT (Basic Level) Practise - 害死人不偿命的(3n+1)猜想
  15. 目标检测(六)YOLOv2__YOLO9000: Better, Faster, Stronger
  16. vsftpd虚拟账户配置
  17. linux命令简写解释
  18. 【BZOJ3672】【UOJ#6】【NOI2014】随机数生成器
  19. 【Android内存泄漏检测】LeakCanary使用总结
  20. linux下md5sum用法 (查看文件或字符串的md5值)

热门文章

  1. 正确使用Enum的FlagsAttribute
  2. 关于eclipse安装maven之后,maven找不到JDK问题
  3. DatabaseMetaData类
  4. for循环操作DOM缓存节点长度?
  5. 变更gcc版本
  6. SQL Server 2012安装配置(Part3 )
  7. oracle 、server和my sql 语法区别
  8. js进阶之function对象
  9. python爬虫之路——基本文件操作
  10. [转]maven项目部署到tomcat