1.1.2
2016-03-25 15:48
99 查看
/* ID:18861501 LANG:C++ TASK:gift1 */ /*------------------Header Files------------------*/ #include <iostream> #include <cstring> #include <string> #include <cstdio> #include <algorithm> #include <cstdlib> #include <ctype.h> #include <cmath> #include <stack> #include <queue> #include <map> #include <vector> #include <limits.h> using namespace std; /*------------------Definitions-------------------*/ #define ll long long #define PI acos(-1.0) #define INF 0x3F3F3F3F /*---------------------Work-----------------------*/ char name[15][20]; int sum[15]; int num; void work() { memset(sum,0,sizeof(sum)); scanf("%d",&num); for(int i=1; i<=num; i++) { scanf("%s",name[i]); } char give[20],given[20]; int initial,people; for(int i=1; i<=num; i++) { scanf("%s",give); scanf("%d%d",&initial,&people); int flag; for(int k=1; k<=num; k++) { if(!strcmp(give,name[k])) { flag=k; break; } } if(people==0) ; //要注意除0操作分别讨论,调试了好多次 else { sum[flag]=sum[flag]-initial; int dedao=initial%people,jiyu=initial/people; sum[flag]=sum[flag]+dedao; while(people--) { scanf("%s",given); for(int k=1; k<=num; k++) { if(!strcmp(given,name[k])) { sum[k]=sum[k]+jiyu; break; } } } } } for(int i=1; i<=num; i++) printf("%s %d\n",name[i],sum[i]); } /*------------------Main Function------------------*/ int main() { //freopen("test.txt","r",stdin); freopen("gift1.out","w",stdout); freopen("gift1.in","r",stdin); work(); return 0; }