为什么?为什么?为什么WA啊!洛谷 [USACO1.1]贪婪的送礼者{已AC}

来源:互联网 发布:有哪些社交软件 编辑:程序博客网 时间:2024/05/17 08:31
#include<bits/stdc++.h>struct node{int cnt;char name[100];}a[100];int i,j,k,m,n,x,y;char s[100];int main(){scanf("%d",&n);getchar();for (i=1;i<=n;i++){gets(a[i].name);}for (int orz=1;orz<=n;orz++){scanf("%s",s);scanf("%d%d*c",&x,&y);for (i=1;i<=n;i++) if (strcmp(s,a[i].name)==0)k=i;for (i=1;i<=y;i++){scanf("%s",s);for (j=1;j<=n;j++)if (strcmp(s,a[j].name)==0){a[j].cnt+=x/y;a[k].cnt-=x/y;}}}for (i=1;i<=n;i++)printf("%s %d\n",a[i].name,a[i].cnt);return 0;}

然后尴尬地发现。。。

然后就莫名其妙的过了?!【滑稽】

#include<bits/stdc++.h>struct node{int cnt;char name[100];}a[100];int i,j,k,m,n,x,y;char s[100];int main(){scanf("%d",&n);getchar();for (i=1;i<=n;i++){scanf("%s",a[i].name);}for (int orz=1;orz<=n;orz++){scanf("%s",s);scanf("%d%d*c",&x,&y);for (i=1;i<=n;i++) if (strcmp(s,a[i].name)==0)k=i;for (i=1;i<=y;i++){scanf("%s",s);for (j=1;j<=n;j++)if (strcmp(s,a[j].name)==0){a[j].cnt+=x/y;a[k].cnt-=x/y;}}}for (i=1;i<=n;i++)printf("%s %d\n",a[i].name,a[i].cnt);return 0;}