第一遍刷pat
没看清题目
corresponding 相应的
我的憨憨程序
#include<bits/stdc++.h>
#define inf 0x3f3f3f3f
using namespace std;
struct p{
char name[15];
char gender;
char ID[15];
int grade;
};
int main()
{
int N;
p m[500],f[500];
char name[15];
char gender;
char ID[15];
int grade,mcnt=0,fcnt=0,maxf=-1,minm=inf,j,k;
scanf("%d",&N);
for(int i=0;i<N;i++)
{
scanf("%s %c %s %d",name,&gender,ID,&grade);
if(gender=='M')
{
strcpy(m[mcnt].name,name);
m[mcnt].gender=gender;
strcpy(m[mcnt].ID,ID);
m[mcnt].grade=grade;
if(grade<minm)
{
minm=grade;
j=mcnt;
}
mcnt++;
}
else
{
strcpy(f[fcnt].name,name);
f[fcnt].gender=gender;
strcpy(f[fcnt].ID,ID);
f[fcnt].grade=grade;
if(grade>maxf)
{
maxf=grade;
k=fcnt;
}
fcnt++;
}
}
if(minm==inf||maxf==-1)
{
if(maxf==-1)
printf("Absent\n");
else
printf("%s %s\n",f[k].name,f[k].ID);
if(minm==inf)
printf("Absent\n");
else
printf("%s %s\n",m[j].name,m[j].ID);
printf("NA\n");
}
else
{
printf("%s %s\n",f[k].name,f[k].ID);
printf("%s %s\n",m[j].name,m[j].ID);
printf("%d\n",f[k].grade-m[j].grade);
}
}