1018 锤子剪刀布题解
题目分析
题目本身很无脑了,按照题意编写程序即可。
刚开始又动了map的念头,其实无脑if判断就可以。分不同的情况,添加一个胜负记录器,添加一个手势判断数组。
我的代码
#include<iostream>
#include<map>
#include<string>
#include<cmath>
int main()
{
using namespace std;
int number;
char jia,yi;
int yiwin=0,jiawin=0;
int jiashou[3]={0,0,0};//0-c 1-j 2-b
int yishou[3]={0,0,0}; //0-c 1-j 2-b
cin>>number;
for(int i=0;i<number;i++)
{
cin>>jia>>yi;
if(jia=='C'&&yi=='C')
;
if(jia=='J'&&yi=='J')
;
if(jia=='B'&&yi=='B')
;
if(jia=='C'&&yi=='J')
{
jiawin++;
jiashou[1]++;
}
if(jia=='C'&&yi=='B')
{
yiwin++;
yishou[0]++;
}
if(jia=='J'&&yi=='C')
{
yiwin++;
yishou[1]++;
}
if(jia=='J'&&yi=='B')
{
jiawin++;
jiashou[2]++;
}
if(jia=='B'&&yi=='C')
{
jiawin++;
jiashou[0]++;
}
if(jia=='B'&&yi=='J')
{
yiwin++;
yishou[2]++;
}
}
cout<<jiawin<<" "<<(number-jiawin-yiwin)<<" "<<yiwin<<endl;
cout<<yiwin<<" "<<(number-jiawin-yiwin)<<" "<<jiawin<<endl;
int maxjia=jiashou[0]>=jiashou[1]?0:1;
maxjia=jiashou[maxjia]>=jiashou[2]?maxjia:2;
int maxyi=yishou[0]>=yishou[1]?0:1;
maxyi=yishou[maxyi]>=yishou[2]?maxyi:2;
char str[4]={"BCJ"};
cout << str[maxjia] << " " << str[maxyi];
return 0;
}