#include<bits/stdc++.h>
using namespace std;
#define endl "\n"
struct n
{
char s;
int num;
};
bool cmp(const n& a,const n& b){
if(a.num!=b.num)
return a.num < b.num;
return a.num > b.num;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
int t;
cin >> t;
while (t--)
{
string a, b, c, d;
cin >> a >> b >> c >> d;
vector<n> all(4);
all[0].num = a.size();
all[0].s = 'A';
all[1].num = b.size();
all[1].s = 'B';
all[2].num = c.size();
all[2].s = 'C';
all[3].num = d.size();
all[3].s = 'D';
sort(all.begin(), all.end(), cmp);
if(all[0].num<all[1].num&&all[1].num<=all[2].num&&all[2].num==all[3].num){
cout << all[0].s << endl;
}
else if (all[3].num > all[2].num && all[2].num >= all[1].num && all[1].num == all[0].num){
cout << all[3].s << endl;
}else{
cout << 'C' << endl;
}
}
return 0;
}
首先题目是给:四个字符串;
要通过选择程序输出答案
思路:若最小<<<&&最大==第二&&第二>第三则输出最小对应选项
若最大>第2>=第3==min则输出最大对应选项;
其余输出C,使用结构体与自定义比较函数。