usaco第二题稍微有点难。。。结构体就ac
#include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> using namespace std; struct student{//定义一个结构体,存人名和钱数; string s; int my; }a[12]; int main(){ int i,j,k,m,n; scanf("%d",&n); for(i=1;i<=n;i++) cin>>a[i].s;//显然,输入人名 ; m=n; while(m--){ string ss;string ren; int x,y; cin>>ss; scanf("%d%d",&x,&y); for(i=1;i<=n;i++)if(ss==a[i].s)k=i;//找到与之匹配的人名 for(i=1;i<=y;i++){ cin>>ren; for(j=1;j<=n;j++){ if(a[j].s==ren){ a[j].my+=x/y; a[k].my-=x/y; } } } } for(i=1;i<=n;i++){ cout<<a[i].s<<' '<<a[i].my<<endl; } return 0; }