zoukankan      html  css  js  c++  java
  • PAT 1018

    现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。

    输入格式:

    输入第1行给出正整数N(<=105),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空格。

    输出格式:

    输出第1、2行分别给出甲、乙的胜、平、负次数,数字间以1个空格分隔。第3行给出两个字母,分别代表甲、乙获胜次数最多的手势,中间有1个空格。如果解不唯一,则输出按字母序最小的解。

    输入样例:

    10
    C J
    J B
    C B
    B B
    B C
    C C
    C B
    J B
    B C
    J J
    

    输出样例:

    5 3 2
    2 3 5
    B B




    1、甲胜则乙负,甲平则乙平,甲负则乙胜------------所以要求甲乙的胜负次数 只要求甲的胜负次数就好了
    2、要求甲和乙获胜次数最多的手势 只要在判断胜负的时候计数,计数完毕后对计数结果进行判断

    # include<iostream>
    using namespace std;
    int main()
    {
    int N,n,s=0,p=0,c1=0,b1=0,j1=0,c2=0,b2=0,j2=0; //s是甲胜的次数,p是平局的次数,b1,c1,j1分别是布 锤 剪手势的获胜次数

    char jia,yi;
    cin>>N;
    n = N;
    while(N--)
    {
    cin>>jia>>yi;
    if(jia=='C'&&yi=='J')        
    {
    s++;
    c1++;
    }
    else if(jia=='J'&&yi=='B')
    {
    s++;
    j1++;
    }
    else if(jia=='B'&&yi=='C')
    {
    s++;
    b1++;
    }
    else if(jia == yi)
    {
    p++;
    }
    else if(jia=='C'&&yi=='B')
    {
    b2++;
    }
    else if(jia=='B'&&yi=='J')
    {
    j2++;
    }
    else
    {
    c2++;
    }
    }

    cout<<s<<" "<<p<<" "<<n-s-p<<endl;
    cout<<n-s-p<<" "<<p<<" "<<s<<endl;
    if(b1>=c1 && b1>=j1) //////最多需要满足的条件就是大于其他的数(这里涉及了优先级所以有等号)
    {
    cout<<'B';
    }
    else if(c1>b1 && c1>=j1) ////C的优先级大于B小于J ,故要输出C的条件是 c1>b1  c1>=j1 
    {
    cout<<'C';
    }
    else if(j1>b1 && j1>c1)
    {
    cout<<'J';
    }
    else
    {
    cout<<'B';     /////字母序即从小到大的字母顺序,故B的优先级最高,其他情况下输出B
    }
    cout<<" ";
    if(b2>=c2 && b2>=j2)
    {
    cout<<'B';
    }
    else if(c2>b2 && c2>=j2)
    {
    cout<<'C';
    }
    else if(j2>b2 && j2>c2)
    {
    cout<<'J';
    }
    else
    {
    cout<<'B';
    }
    return 0;
    }

  • 相关阅读:
    Android的FileOutputStream中向文本文件中写入换行符
    简单又好看的按钮,扁平化按钮。
    android常见错误之 No resource found that matches the given name
    eclipse中Android模拟器,DDMS看不到设备
    Android软件开发之盘点所有Dialog对话框大合集
    Android软件开发之TextView详解
    frameset网页彻底退出或跳转(转)
    .Net 如何限制用户登录(转)
    将上传图片文件转成二进制流再存储
    数据库链接字符串自动生成
  • 原文地址:https://www.cnblogs.com/wshyj/p/6284344.html
Copyright © 2011-2022 走看看