pat乙级1018锤子剪刀布 (20分)

#include<stdio.h>//请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。

int change(char c)//布》石头》剪刀, 
{
    if(c==B)  return 0;//甲胜平负,乙胜平负 
    if(c==C)  return 1;
    if(c==J)  return 2;
    
 } 
int main()
{
    int N;
    char c1,c2;
    int time_A[3]={0};
    int time_B[3]={0};
    int tim_A[3]={0};
    int tim_B[3]={0};
    
    char m[3]={B,C,J};
    scanf("%d",&N);
    for(int i=0;i<N;i++)
    {
        getchar();//这里是因为scanf使用%c时会将换行符\n读入,需要在合适的地方用getchar()吸收空格
        scanf("%c %c",&c1,&c2);
        int k1=change(c1);
        int k2=change(c2);
        if((k1+1)%3==k2)//甲胜 
        {
            time_A[0]++;
            time_B[2]++;
            tim_A[k1]++;
             
        }
        else if(k1==k2)
        {
            time_A[1]++;
            time_B[1]++;
        }
        else
        {
            time_A[2]++;
            time_B[0]++;
            tim_B[k2]++;
        }
    }
    printf("%d %d %d\n",time_A[0],time_A[1],time_A[2]);
    printf("%d %d %d\n",time_B[0],time_B[1],time_B[2]);
    
    int id1=0,id2=0;
    for(int i=0;i<3;i++)
    {
        if(tim_A[i]>tim_A[id1])
        id1=i;
        if(tim_B[i]>tim_B[id2])
        id2=i;
    }
    printf("%c %c",m[id1],m[id2]);
    return 0;
    
    
}

 

pat乙级1018锤子剪刀布 (20分)

上一篇:Android图像格式类及图像转换方法


下一篇:APP开发——加载地图上绘制信息