uva1610 Party Games

时间:2023-03-10 07:01:35
uva1610 Party Games

细节值得注意

注意vector<string>是可以直接sort的!

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std; vector<string> str; int main(){
int n;
while(cin>>n&& n){
str.clear();
string s;
for(int i = ; i < n; i++){
cin >> s;
str.push_back(s);
}
sort(str.begin(), str.end());
int len = str.size();
string s1 = str[len/ - ];
string s2 = str[len/];
len = s1.size(); int p = ;
string ans = "A"; //
while(p < len){
while(ans[p] <= 'Z' && ans < s1) ++ans[p]; //超过Z为[,不能出现在串中
if(ans[p] <= 'Z' && ans >= s1 && ans < s2) break;
--ans[p];
ans += 'A';
++p;
/*
AYZZ
AZ
AY[
*/
/*while(ans < s1) ++ans[p];//这样做,如果p短,那么ans【p】会大于s1[p](这就有问题了,如果此时s1[p]是Z,就尴尬了),p=length,会等于
if(ans < s2) break;
ans[p]--;
ans += "A";
++p;*/
}
cout << ans << endl;
}
return ;
}