#include<stdio.h> #include<stdlib.h> #include<string.h> #include<math.h> int max(int a,int b){ return a>b?a:b; } int main() { int n; scanf("%d",&n); getchar(); char a,b; int ap[6]={0},bp[6]={0}; //0 1 2 3 4 5 分别代表 胜利 平局 失败 锤子胜利 剪刀胜利 布胜利 while(scanf("%c %c",&a,&b)!=EOF){ getchar(); if(a=='C'&&b=='J'){ ap[0]++; bp[2]++; ap[3]++; } if(a=='C'&&b=='C'){ ap[1]++; bp[1]++; } if(a=='C'&&b=='B'){ ap[2]++; bp[0]++; bp[5]++; } if(a=='J'&&b=='B'){ ap[0]++; bp[2]++; ap[4]++; } if(a=='J'&&b=='J'){ ap[1]++; bp[1]++; } if(a=='J'&&b=='C'){ ap[2]++; bp[0]++; bp[3]++; } if(a=='B'&&b=='C'){ ap[0]++; bp[2]++; ap[5]++; } if(a=='B'&&b=='B'){ ap[1]++; bp[1]++; } if(a=='B'&&b=='J'){ ap[2]++; bp[0]++; bp[4]++; } } printf("%d %d %d\n",ap[0],ap[1],ap[2]); printf("%d %d %d\n",bp[0],bp[1],bp[2]); while(1){ if(ap[3]>=ap[4]&&ap[3]>ap[5]){ printf("C ");break; } if(ap[3]>ap[4]&&ap[3]==ap[5]){ printf("B ");break; } if(ap[4]>ap[3]&&ap[4]>ap[5]){ printf("J ");break; } if(ap[4]==ap[3]&&ap[4]>ap[5]){ printf("C ");break; } if(ap[4]>=ap[3]&&ap[4]==ap[5]){ printf("B ");break; } if(ap[5]>=ap[3]&&ap[5]>=ap[4]){ printf("B ");break; } } while(1){ if(bp[3]>=bp[4]&&bp[3]>bp[5]){ printf("C");break; } if(bp[3]>bp[4]&&bp[3]==bp[5]){ printf("B");break; } if(bp[4]>bp[3]&&bp[4]>bp[5]){ printf("J");break; } if(bp[4]==bp[3]&&bp[4]>bp[5]){ printf("C");break; } if(bp[4]>=bp[3]&&bp[4]==bp[5]){ printf("B");break; } if(bp[5]>=bp[3]&&bp[5]>=bp[4]){ printf("B");break; } } return 0; }
写的太冗长了 但不知道怎么写简练写 以后想到再补吧
标签:pat,++,乙级,break,ap,bp,&&,printf,1018 From: https://www.cnblogs.com/Npc-Hb/p/17172796.html