uva 1610 聚会游戏
Posted dynastysun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了uva 1610 聚会游戏相关的知识,希望对你有一定的参考价值。
一般的做法就是写一堆if,但是由于题目中的限制比较多,所以陷阱也很多,很容易漏掉一些情况
这里我们采用暴力的方法去实现
1 #include <bits/stdc++.h> 2 using namespace std; 3 4 int n, k, cnt; 5 string s0, s1, s2; 6 7 int main(){ 8 while(cin >> n && n){ 9 vector<string> str; 10 k = n/2; 11 while(n--){ 12 cin >> s0; 13 str.push_back(s0); 14 } 15 sort(str.begin(), str.end()); 16 s1 = str[k-1]; 17 s2 = str[k]; 18 s0 = ""; 19 cnt= 0; 20 while(1){ 21 s0 += "A"; 22 while(s0 < s1 && s0[cnt] != ‘Z‘) s0[cnt]++; 23 if(s0 >= s2) s0[cnt]--; 24 if(s0 < s2 && s0 >= s1) break; 25 cnt++; 26 } 27 cout << s0 << endl; 28 } 29 return 0; 30 }
以上是关于uva 1610 聚会游戏的主要内容,如果未能解决你的问题,请参考以下文章