WUOJ-ACM :1003: 零起点学算法78——牛牛
程序员文章站
2022-04-01 23:30:17
武汉科技大学ACM :1003: 零起点学算法78——牛牛Problem Description牛牛是一种纸牌游戏,总共5张牌,规则如下: 如果找不到3张牌的点数之和是10的倍数,则为没牛; 如果其中3张牌的点数之和是10的倍数,则为有牛,剩下两张牌的点数和对10取余数,余数是几,就是牛几,特别的当 ......
武汉科技大学ACM :1003: 零起点学算法78——牛牛
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 <iostream> 2 #include <cmath> 3 using namespace std; 4 int main() 5 { 6 int a[5]; 7 int n,o; 8 int sum1; 9 while(scanf("%d",&n)!=EOF) 10 { 11 if(n<=100) 12 { 13 for(o=0;o<n;o++){ 14 int l,b; 15 for(l=0;l<5;l++){ 16 scanf("%d",&b); 17 a[l]=b; 18 } 19 int b1=0,b2=0; 20 int i,j,k,i1; 21 //start for 22 for(i=0;i<=2;i++){ 23 for(j=i+1;j<=3;j++){ 24 for(k=j+1;k<=4;k++){ 25 if((a[i]+a[j]+a[k])%10==0){ 26 b1=1; 27 sum1=0; 28 for(i1=0;i1<=4;i1++){ 29 if(i1!=i && i1!=j && i1!=k){ 30 sum1+=a[i1]; 31 } 32 } 33 if(sum1%10==0){ 34 b2=1; 35 } 36 } 37 } 38 } 39 }//End for 40 if(b1)//有牛 41 { 42 if(b2)//牛牛{ 43 { 44 printf("Case #%d: Niu Niu\n",o+1); 45 } 46 else 47 { 48 printf("Case #%d: Niu %d\n",o+1,(sum1%10)); 49 } 50 } 51 52 else//没牛 53 { 54 printf("Case #%d:Mei Niu\n",o+1); 55 } 56 }//End for o 57 }//end for if 58 }//END for while 59 60 return 0; 61 }
上一篇: 神龙加入AliOS阵营 首款智联网汽车落地东风雪铁龙
下一篇: ajax跨域问题