比赛 |
咲 -Saki- 互测赛 |
评测结果 |
AAAAAAAAAA |
题目名称 |
天才麻将少女什么编 |
最终得分 |
100 |
用户昵称 |
fflyt |
运行时间 |
0.196 s |
代码语言 |
C++ |
内存使用 |
3.13 MiB |
提交时间 |
2012-07-19 10:28:04 |
显示代码纯文本
#include<cstdio>
#include<string>
#include<fstream>
using namespace std;
struct nani
{
char s[201];
};
struct people
{
string name;
string school;
} p[200];
struct school
{
string school;
}s[40];
struct mahoushoujo
{
string name;
} m[200];
int main()
{
freopen("sakinani.in","r",stdin);
freopen("sakinani.out","w",stdout);
ifstream fin("sakinani.in");
ofstream fout("sakinani.out");
int num1;
fin>>num1;
int i,j;
for(i=0;i<num1;i++)
{
fin>>p[i].name>>p[i].school;
}
int num2;
fin>>num2;
for(i=0;i<num2;i++)
{
fin>>m[i].name;
}
bool exist=0;
int nos=0;
for(i=0;i<num1;i++)
{
for(j=0;j<nos+1;j++)
if(p[i].school==s[j].school)
exist=1;
if(exist==0)
{
s[nos].school=p[i].school;
nos++;
}
exist=0;
}
int score[201];
for(i=0;i<num1;i++)
score[i]=1;
for(i=0;i<num1;i++)
{
for(j=0;j<num2;j++)
{
if(m[j].name==p[i].name)
score[i]=2;
}
}
int akarin[40]={0};
nani name;
scanf("\n");
while ( scanf("%s\n",&name)==1 )
{
for(i=0;i<num1;i++)
{
if(name.s==p[i].name)
{
for(j=0;j<nos;j++)
{
if(s[j].school==p[i].school)
{
akarin[j]=akarin[j]+score[i];
}
}
}
}
}
int max=0,save;
for(i=0;i<nos;i++)
{
if(akarin[i]>max)
{
max=akarin[i];
save=i;
}
}
fout<<s[save].school<<endl;
return 0;
}