锤子剪刀布 (20)

179 阅读1分钟

链接:www.nowcoder.com/questionTer…
来源:牛客网

大家应该都会玩“锤子剪刀布”的游戏:

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

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

输出描述:
输出第1、2行分别给出甲、乙的胜、平、负次数,数字间以1个空格分隔。第3行给出两个字母,分别代表甲、乙获胜次数最多的手势,中间有1个空格。如果解不唯
一,则输出按字母序最小的解。
示例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

链接:https://www.nowcoder.com/questionTerminal/79db907555c24b15a9c73f7f7d0e2471?toCommentId=3225314
来源:牛客网

#include <iostream>
 
using namespace std;
struct Caiquan
{
    int jia_win=0;
    int jia_lose=0;
    int tie=0;
    int yi_win=0;
    int yi_lose=0;
    int jia_J=0;
    int jia_C=0;
    int jia_B=0;
    int yi_J=0;
    int yi_C=0;
    int yi_B=0;
}caiquan;
int main()
{
    int N,i;
    char j,y;
    cin>>N;
    for(i=0;i<N;i++)
    {
        cin>>j;
        getchar();
        cin>>y;
        if((j=='J'&&y=='J')||(j=='C'&&y=='C')||(j=='B'&&y=='B'))
        {
            caiquan.tie+=1;
        }
        else if(j=='J'&&y=='B')
        {
            caiquan.jia_win+=1;
            caiquan.yi_lose+=1;
            caiquan.jia_J+=1;
        }
        else if(j=='C'&&y=='J')
        {
            caiquan.jia_win+=1;
            caiquan.yi_lose+=1;
            caiquan.jia_C+=1;
        }
        else if(j=='B'&&y=='C')
        {
            caiquan.jia_win+=1;
            caiquan.yi_lose+=1;
            caiquan.jia_B+=1;
        }
        else if(y=='J'&&j=='B')
        {
            caiquan.jia_lose+=1;
            caiquan.yi_win+=1;
            caiquan.yi_J+=1;
        }
        else if(y=='C'&&j=='J')
        {
            caiquan.jia_lose+=1;
            caiquan.yi_win+=1;
            caiquan.yi_C+=1;
        }
        else if(y=='B'&&j=='C')
        {
            caiquan.jia_lose+=1;
            caiquan.yi_win+=1;
            caiquan.yi_B+=1;
        }
    }
    cout<<caiquan.jia_win<<" "<<caiquan.tie<<" "<<caiquan.jia_lose<<endl;
    cout<<caiquan.yi_win<<" "<<caiquan.tie<<" "<<caiquan.yi_lose<<endl;
    if(caiquan.jia_B>=caiquan.jia_C&&caiquan.jia_B>=caiquan.jia_J)cout<<"B ";
    else if(caiquan.jia_C>caiquan.jia_B&&caiquan.jia_C>=caiquan.jia_J)cout<<"C ";
    else if(caiquan.jia_J>caiquan.jia_B&&caiquan.jia_J>caiquan.jia_C)cout<<"J ";
    if(caiquan.yi_B>=caiquan.yi_C&&caiquan.yi_B>=caiquan.yi_J)cout<<"B";
    else if(caiquan.yi_C>caiquan.yi_B&&caiquan.yi_C>=caiquan.yi_J)cout<<"C";
    else if(caiquan.yi_J>caiquan.yi_B&&caiquan.yi_J>caiquan.yi_C)cout<<"J";
}