题目大意很简单:一场足球赛中,若果双方平手的话,那么双方各得一分,否则,赢的一方得3分,输的一方不得分。输入比赛的数量t和各队的得分,求出结果为平局的比赛的数量。其实这是一道很简单的数学题,就是解二元一次方程组。先求出各队得分的总和sum,设不是平局的数量为X,平局的数量为Y,则可得方程组:
3X + 2Y = sum;X + Y = t(t为比赛的总数量)解之得:Y = 3t - sum
我居然开始还想错了,用 printf("%d\n",t*n-totscore); 这说明好脑子不如烂笔头,什么都还是动手自己算算保险
正确代码如下
#include <stdio.h> int main() { int t,n,i; char name[15]; int tmp,totscore; while(scanf("%d%d",&t,&n)) { if(t==0) break; totscore=0; //总分清零 for(i=0;i<t;i++) { scanf("%s",name); scanf("%d",&tmp); totscore+=tmp; } printf("%d\n",3*n-totscore); } return 0; }