小y的考试
小y的考试
https://ac.nowcoder.com/acm/contest/19306/1038
链接:https://ac.nowcoder.com/acm/contest/19306/1038
来源:牛客网
来源:牛客网
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 524288K,其他语言1048576K
64bit IO Format: %lld
空间限制:C/C++ 524288K,其他语言1048576K
64bit IO Format: %lld
题目描述
众所周知,小y是一个 “1+1” 都能回答错误的小可爱。因为这个,她没
少吃Z老师的头槌。
今天,Z老师来了场测验。小y看着卷子,一头雾水,什么都不会啊。
怎么办呢?幸好都是选择题。小y心想:“坊间传说,三长一短选最短,
三短一长选最长,参差不齐就选 C。我不如就这么试一试,兴许能少吃 9 下头
槌呢。”
可是,题目好多啊,题目好长啊,小y数都数不过来了 (“1 道,2 道,9道,9 道,9 道... 诶?刚刚数到几了?”),于是就请聪明的你来帮她选出答案啦。
注意,由于 “三长一短” 排在 “三短一长” 之前,所以优先判断是否满足 “三
长一短”,再判断是否满足 “三短一长”。当且仅当最短选项唯一时满足 “三长一
短”;同理,当且仅当最长选项唯一时满足 “三短一长”。其余情况都算作 “参差
不齐”。
少吃Z老师的头槌。
今天,Z老师来了场测验。小y看着卷子,一头雾水,什么都不会啊。
怎么办呢?幸好都是选择题。小y心想:“坊间传说,三长一短选最短,
三短一长选最长,参差不齐就选 C。我不如就这么试一试,兴许能少吃 9 下头
槌呢。”
可是,题目好多啊,题目好长啊,小y数都数不过来了 (“1 道,2 道,9道,9 道,9 道... 诶?刚刚数到几了?”),于是就请聪明的你来帮她选出答案啦。
注意,由于 “三长一短” 排在 “三短一长” 之前,所以优先判断是否满足 “三
长一短”,再判断是否满足 “三短一长”。当且仅当最短选项唯一时满足 “三长一
短”;同理,当且仅当最长选项唯一时满足 “三短一长”。其余情况都算作 “参差
不齐”。
输入描述:
输入一个整数 T,表示题目数。 之后每道题目分 4 行,分别为 ABCD 四个选项。 具体可见样例。
输出描述:
对于每道题目,输出根据坊间传说应选的选项。 具体可见样例。
示例1
输入
复制 3 A.3.141592653589 B.2.718281828459 C.0.618033988749 D.0.577215664901532860 A.wo_shi_cuo_de B.wo_bu_dui C.wo_shi_dui_de D.C_shi_dui_de A.3.141592653589 B.2.718281828459 C.0.618033988749 D.0.5772156649013 A.3.141592653589 B.2.718281828459 C.0.618033988749 D.0.577215664901532860 A.wo_shi_cuo_de B.wo_bu_dui C.wo_shi_dui_de D.C_shi_dui_de A.3.141592653589 B.2.718281828459 C.0.618033988749 D.0.577215664901
说明
第一道选择题中,根据 “三短一长选最长” 的原则,显然选 D。 第二道选择题中,根据 “三长一短选最短” 的原则,显然选 B。 第三道选择题中,根据 “参差不齐就选 C” 的原则,显然选 C。
备注:
对于 100% 的数据,1 ≤ T ≤ 500,每道题选项长度 ≤ 600。 选项中只会包含可见字符,数字、字母和符号。请不要在考试中随意试验这个坊间传说,否则会像样例中的第二道题一样 选出显然错误的答案。
#include<iostream>
#include<algorithm>using namespace std;
struct s
{
int ans;
int sum;
}a[510];
bool cmp(s&a,s&b)
{
return a.ans<b.ans;
}
int main()
{
int t;
cin>>t;
while(t--)
{
string b;
for (int i=0;i<4;i++)
cin>>b,a[i].ans=b.size(),a[i].sum=i;
sort(a,a+4,cmp);
if (a[0].ans < a[1].ans)
cout<<char(a[0].sum+'A')<<endl;
else if (a[2].ans<a[3].ans)
cout<<char(a[3].sum+'A')<<endl;
else
cout<<"C"<< endl;
}
return 0;
}