L1-019 谁先倒
思路
看到这个题目就想着用两个数组分别存甲乙的情况,但似乎有点麻烦,然后就用了一个二维数组,
然后进行判断:先将甲乙划的加起来,然后在判断1.同输同赢情况 2.甲输的情况 3.乙输的情况
最后判断谁喝醉了,再输出喝醉了的人和没喝醉的人喝了多少
源码
#include <stdio.h>
int main ()
{
int jia_max , yi_max , n ;
scanf("%d%d%d",&jia_max, &yi_max,&n);
int record[n][4];
int i , t;
for ( i = 0; i < n ; i++){
for ( t = 0; t < 4 ; t++)
scanf ("%d",&record[i][t]);
}
int jia,yi,sum,flag; //jia为甲喝的酒,yi为乙喝的酒
flag = jia = yi = 0;
for ( i = 0; i < n ; i++){
sum = record[i][0] + record [i][2];
if (sum == record[i][1] && sum == record[i][3] || sum != record[i][1] && sum != record[i][3] ) //同输同赢情况
continue;
if( sum == record[i][1])//甲输了
jia ++;
if( sum == record[i][3])//乙输了
yi ++;
if ( jia > jia_max ){ //甲喝醉了
flag = 1;
break;
}
if ( yi > yi_max){ //乙喝醉了
flag = 2;
break;
}
}
if ( flag == 1)
printf("A\n%d",yi);
else if ( flag == 2)
printf("B\n%d",jia);
}