当前位置: 代码迷 >> 综合 >> ZZULInbsp;nbsp;Greedynbsp;Giftnbsp;Giversnbsp;Greedy…
  详细解决方案

ZZULInbsp;nbsp;Greedynbsp;Giftnbsp;Giversnbsp;Greedy…

热度:60   发布时间:2024-01-04 11:11:57.0
还是那个IMPORTANTNOTE惹的祸!把个gets()改为scanf就行了
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct fen{int money;char name[20];
}fen[20];
int main()
{int m,i,d,q,j,s;char a[20];scanf("%d",&m);for(i=0;i<19;i++)fen[i].money=0;for(i=0;i<m;i++)scanf("%s",fen[i].name);for(q=0;q<m;q++){scanf("%s",a);scanf("%d%d",&s,&d);if(d==0)continue;for(i=0;i<m;i++)if(strcmp(fen[i].name,a)==0){// puts(fen[i].name);fen[i].money+=s%d-s;//printf("%d\n",fen[i].money);break;}for(i=0;i<d;i++){scanf("%s",a);for(j=0;j<m;j++)if(strcmp(fen[j].name,a)==0){// printf("%d\n",fen[j].money);fen[j].money+=s/d;//printf("%d\n",fen[j].money);break;}}}for(i=0;i<m;i++)printf("%s %d\n",fen[i].name,fen[i].money);return 0;
}
  相关解决方案