gift1

来源:互联网 发布:淘宝福袋真的不能退吗 编辑:程序博客网 时间:2024/05/29 09:25

Greedy Gift Givers

简述
给团队的小伙伴分礼物,把自己准备的礼物钱均分给想送礼物的伙伴,当然也可以不准备钱,不送。收到的礼物钱是不计入送给别人的礼物钱里的。最后,一轮送礼收礼之后,大家各自手里有多少钱,就做这个事。

代码

#include <stdio.h>#include <string.h>struct peo{    char name[20];    int m;}fri[12];int main(void){    freopen("gift1.in", "r", stdin);    freopen("gift1.out", "w", stdout);    int np, i, m, num;    char name[20];    scanf("%d\n", &np);    for(i = 0; i < np; i++)        scanf("%s\n",fri[i].name);    for( i = 0; i < np; i++)    {        int count = 0,n = 0;        scanf("%s",name);        scanf("%d %d\n", &m, &num);        if(m == 0)        {            while(num--)                scanf("%s\n",name);            continue;        }        while(strcmp(name, fri[count++].name));        if(num > 0)        {            fri[count-1].m += (m - num  * (m / num));            fri[count-1].m -= m;            n = num;            while(n--)            {                count = 0;                scanf("%s\n", name);                while(strcmp(name, fri[count++].name));                fri[count-1].m += (m / num);            }        }        else            fri[count-1].m += m;    }    for(i = 0; i < np; i++)        printf("%s %d\n", fri[i].name, fri[i].m);    return 0;}