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