Problem Description
牛牛是一种纸牌游戏,总共5张牌,规则如下:
如果找不到3张牌的点数之和是10的倍数,则为没牛;
如果其中3张牌的点数之和是10的倍数,则为有牛,剩下两张牌的点数和对10取余数,余数是几,就是牛几,特别的当余数是0的时候是牛牛;
例如: 1 2 3 4 5, 1 + 4 + 5 = 0 (mod 10),2 + 3 = 5(mod 10), 为牛5。
Input
第一行输入一个整数T(T <= 100),表示有几组数据。每组数据占一行,5 个数, 每个数的范围都是1到10。
Output
见样例。
Sample Input
3 1 1 1 1 1 1 2 3 4 5 1 9 10 10 10
Sample Output
Case #1: Mei Niu Case #2: Niu 5 Case #3: Niu Niu
1 #include<stdio.h> 2 int main(void) 3 { 4 int a[5]; 5 int n,o; 6 int sum1; 7 8 while(scanf("%d",&n) !=EOF) 9 { 10 if(n<=100) 11 { 12 for(o=0;o<n;o++) 13 { 14 int l,b; 15 for(l=0;l<5;l++) 16 { 17 scanf("%d",&b); 18 a[l]=b; 19 } 20 int b1=0,b2=0; 21 int i,j,k,i1; 22 //start for 23 for(i=0;i<=2;i++) 24 { 25 for(j=i+1; j<=3; j++) 26 { 27 for(k=j+1; k<=4; k++) 28 { 29 if((a[i]+a[j]+a[k])%10==0) 30 { 31 b1=1; 32 sum1=0; 33 for(i1=0;i1<=4;i1++) 34 { 35 if(i1!=i && i1!=j && i1!=k) 36 { 37 sum1+=a[i1]; 38 } 39 } 40 if(sum1%10==0) 41 { 42 b2=1; 43 } 44 } 45 } 46 } 47 }//End for 48 if(b1)//有牛 49 { 50 if(b2)//牛牛 51 { 52 printf("Case #%d: Niu Niu\n",o+1); 53 } 54 else 55 { 56 printf("Case #%d: Niu %d\n",o+1,(sum1%10)); 57 } 58 } 59 else//没牛 60 { 61 printf("Case #%d: Mei Niu\n",o+1); 62 } 63 }//End for o 64 }//end for if 65 }//end for while 66 67 return 1; 68 }
时间: 2024-10-10 11:13:17