记录编号 |
151316 |
评测结果 |
AAAAAAAAA |
题目名称 |
贪婪的送礼者 |
最终得分 |
100 |
用户昵称 |
forever |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.003 s |
提交时间 |
2015-03-04 14:29:36 |
内存使用 |
0.32 MiB |
显示代码纯文本
#include<iostream>
#include<cstdlib>
#include<string>
#include<cstdio>
using namespace std;
struct ren
{
string name;
int a;
int b;
string nname[22];
int summ[22];
int suum;
}ren[22];
int main()
{ freopen("gift1.in","r",stdin);
freopen("gift1.out","w",stdout);
int renshu,qq,ss[22];
string nn[22];
cin>>renshu;
for(int i=1;i<=renshu;++i)
cin>>nn[i];
for(int i=1;i<=renshu;++i)
{
cin>>ren[i].name;
cin>>ren[i].a;
cin>>ren[i].b;
if(ren[i].b!=0)
{
for(int p=1;p<=ren[i].b;++p)
{
cin>>ren[i].nname[p];
ren[i].summ[p]=0;
}
}
}
for(int i=1;i<=renshu;++i)
{ if(ren[i].b!=0)
{qq=ren[i].a/ren[i].b;
ss[i]=ren[i].a%ren[i].b;
for(int f=1;f<=ren[i].b;++f)
ren[i].summ[f]+=qq;
ren[i].suum=0;
}
if(ren[i].b==0)
{
ss[i]=ren[i].a;
continue;
}
}
for(int p=1;p<=renshu;++p)
{ren[p].suum=ren[p].suum-ren[p].a+ss[p];;
for(int i=1;i<=renshu;++i)
for(int h=1;h<=ren[i].b;++h)
if(ren[p].name==ren[i].nname[h])
ren[p].suum+=ren[i].summ[h];
}
for(int i=1;i<=renshu;++i)
{
cout<<nn[i]<<" ";
for(int k=1;k<=renshu;++k)
if(ren[k].name==nn[i])
cout<<ren[k].suum<<endl;
}
//fclose(stdin);fclose(stdout);
//system("pause");
return 0;
}