题目描述
牛牛内推了好多人去牛客网参加面试,面试总共分四轮,每轮的面试官都会对面试者的发挥进行评分。评分有 A B C D 四种。如果面试者在四轮中有一次发挥被评为 D,或者两次发挥被评为 C,就不会通过面试。如果面试者没有一次被评为 D,并且有三个或以上的 A,则会获得 special offer。其余情况会获得普通 offer。
现在告诉你一些面试者的发挥,请你算一算,他们的面试结果分别是什么。
输入描述:
第一行输入一个 T,代表面试者的个数。
接下来有 T 行,每行都有一个长度为 4 的字符串,每个位置的字符分别代表面试者每一轮的发挥。
输出描述:
输出 T 行,分别表示 T 个面试者的面试结果。如果面试失败,输出failed,如果面试通过,但不是 special offer,则输出offer,否则输出 sp offer。
示例1
输入
2
AAAB
ADAA
输出
sp offer
failed
暴力+模拟
代码:
#include<bits/stdc++.h>
using namespace std;
int n;
char s[1001];
int main() {
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
int A=0,B=0,C=0,D=0;
cin>>s;
for(int i=0;i<=3;i++)
{
if(s[i]=='A')
A++;
if(s[i]=='B')
B++;
if(s[i]=='C')
C++;
if(s[i]=='D')
D++;
}
if(D>=1||C>=2)
printf("failed\n");
else if(A>=3)
printf("sp offer\n");
else
printf("offer\n");
}
return 0;
}