锤子剪刀布
来源:互联网 发布:安卓小说阅读器源码 编辑:程序博客网 时间:2024/04/30 11:42
题目描述
大家应该都会玩“锤子剪刀布”的游戏。现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。
输入
输入第1行给出正整数N(<=105),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空格。
输出
输出第1、2行分别给出甲、乙的胜、平、负次数,数字间以1个空格分隔。第3行给出两个字母,分别代表甲、乙获胜次数最多的手势,中间有1个空格。如果解不唯一,则输出按字母序最小的解。
样例输入
10C JJ BC BB BB CC CC BJ BB CJ J
样例输出
5 3 22 3 5B B
#include<iostream>#include<iomanip>#include<cmath>#include<vector>#include<string>using namespace std;int main(){int sheng=0,fu=0,ping=0,max1=0,max2=0,zhi1=0,zhi2=0,h=0;int curr1[3]={0},curr2[3]={0};long N;string s1="",s2="",a,b;cin>>N;for(int i=0;i<N;i++){cin>>a>>b;s1.append(a);s2.append(b);}for(int m=0;m<N;m++){if(s1[m]==s2[m]){ping++;}h = s1[m]-s2[m];switch(h){case 1: fu++;curr2[0]++; break; case -1: sheng++; curr1[0]++; break; case 7: fu++; curr2[1]++; break; case -7: sheng++; curr1[1]++; break; case 8: sheng++; curr1[2]++; break; case -8: fu++; curr2[2]++; break; }}cout<<sheng<<" "<<ping<<" "<<fu<<endl;cout<<N-sheng-ping<<" "<<ping<<" "<<sheng<<endl;for(int n=0;n<3;n++){if(max1<curr1[n]){max1=curr1[n];zhi1=n;}if(max2<curr2[n]){max2=curr2[n];zhi2=n;}}if(zhi1==0){cout<<"B ";}else if(zhi1==1){cout<<"C ";}else if(zhi1==2){cout<<"J ";}if(zhi2==0){cout<<"B";}else if(zhi2==1){cout<<"C";}else if(zhi2==2){cout<<"J";}return 0;}
0 0
- AOJ663 锤子剪刀布
- PAT1018 锤子剪刀布
- pat_b_1018 锤子剪刀布
- 1018. 锤子剪刀布
- PAT1018锤子剪刀布
- 1018锤子剪刀布
- 1018.锤子剪刀布
- 1018. 锤子剪刀布
- pat1018:锤子剪刀布
- 1018. 锤子剪刀布
- 锤子剪刀布
- 1022: 锤子剪刀布
- 1018 锤子剪刀布
- 1018 锤子剪刀布
- 1018. 锤子剪刀布
- PAT1018剪刀锤子布
- 1018. 锤子剪刀布
- 锤子剪刀布
- zsh不兼容的坑-zsh:no matches found
- 产生死锁的必要条件
- Python——13定制类
- Android应用中res/drawable文件夹下定义的xml文件内容详解(一)
- 仿宝宝树孕育的圆形ListView的实现
- 锤子剪刀布
- Android开发笔记之RecycleView加载不同item布局的实现
- 位运算的特殊用途
- Wordpress条件标签的使用
- Bestcoder round#85 解题报告
- C#控制台 VS2015使用技巧 生成类图的步骤
- CDOJ 1144 Big Brother
- 说反话
- 华为面试