锤子剪刀布 (20)
Posted 葛杨杨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了锤子剪刀布 (20)相关的知识,希望对你有一定的参考价值。
时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小)
题目描述
大家应该都会玩“锤子剪刀布”的游戏:
现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。
输入描述:
输入第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 #include <iostream> 2 using namespace std; 3 int main(){ 4 int n=10; 5 char jia; 6 char yi; 7 int jias=0; 8 int jiap=0; 9 int i=0; 10 int jiac=0; int jiaj=0; int jiab=0; 11 int yic=0; int yij=0; int yib=0; 12 char jiaying=‘J‘; 13 char yiying=‘J‘; 14 cin>>n; 15 for(i=0;i<n;i++){ 16 cin>>jia>>yi; 17 if(jia==‘C‘){ 18 if(yi==‘C‘){ 19 jiap++; 20 }else if(yi==‘J‘){ 21 jias++; 22 jiac++; 23 }else{ 24 yib++; 25 } 26 }else if(jia==‘J‘){ 27 if(yi==‘J‘){ 28 jiap++; 29 }else if(yi==‘B‘){ 30 jias++; 31 jiaj++; 32 }else{ 33 yic++; 34 } 35 }else if(jia==‘B‘){ 36 if(yi==‘C‘){ 37 jias++; 38 jiab++; 39 }else if(yi==‘B‘){ 40 jiap++; 41 }else{ 42 yij++; 43 } 44 } 45 } 46 cout<<jias<<" "<<jiap<<" "<<n-jias-jiap<<"\n" 47 <<n-jias-jiap<<" "<<jiap<<" "<<jias; 48 49 if(jiaj<=jiac) 50 jiaying=‘C‘; 51 if(jiac<=jiab) 52 jiaying=‘B‘; 53 cout<<"\n"<<jiaying<<" "; 54 55 if(yij<=yic) 56 yiying=‘C‘; 57 if(yic<=yib) 58 yiying=‘B‘; 59 cout<<yiying<<endl; 60 61 return 0; 62 }
以上是关于锤子剪刀布 (20)的主要内容,如果未能解决你的问题,请参考以下文章