2516: 剪刀石头布
2016-01-19 09:43
363 查看
一匹真正的好马,即使在鞭子的影子下,也能飞奔。
小慧小时候很喜欢和她的小伙伴们一起玩剪刀(Scissors)、石头(Rock)、布(Cloth)的游戏,但现在她上大学了,和小伙伴们不能经常见面,但可以通过网络交流,她现在很想和小伙伴们重温这个小游戏。
学了c++的你,可以用类帮她完成这个小游戏吗?每局游戏进行n场对战,赢得次数多的是最后的赢家,可以出现平局。
第1行 n(1<=n<=20) ,表示下面有n组对战信息。
从第2行到第n+1行,每行两个英文单词,表示对战信息。小慧的信息是第一列
一个英文字母W或L或D 表示小慧的赢,输或平手。
//以下代码会自动添加到程序的开始
#include <iostream>
using namespace std;
class RSC
{
private:
char a[21][10];
char b[21][10];
int n;
char result;
int judge(char a,char b);
public:
void input();
void output();
void decide();
};
//以下请给出 成员函数judge
//以下代码会自动添加到程序的末尾
void RSC::input()
{
cin>>n;
int i;
for(i=0; i<n; i++)
cin>> a[i]>>b[i];
}
void RSC::output()
{
decide();
cout<<result<<endl;
}
void RSC::decide()
{
int num=0,i;
for(i=0; i<n; i++)
num = num + judge(a[i][0],b[i][0]);
if(num>0)
result ='W';
else if(num==0)
result= 'D';
else
result = 'L';
}
int main()
{
RSC test;
test.input();
test.output();
return 0;
}
Description
小慧小时候很喜欢和她的小伙伴们一起玩剪刀(Scissors)、石头(Rock)、布(Cloth)的游戏,但现在她上大学了,和小伙伴们不能经常见面,但可以通过网络交流,她现在很想和小伙伴们重温这个小游戏。学了c++的你,可以用类帮她完成这个小游戏吗?每局游戏进行n场对战,赢得次数多的是最后的赢家,可以出现平局。
Input
第1行 n(1<=n<=20) ,表示下面有n组对战信息。从第2行到第n+1行,每行两个英文单词,表示对战信息。小慧的信息是第一列
Output
一个英文字母W或L或D 表示小慧的赢,输或平手。
Sample Input
5 Rock Scissors Scissors Rock Cloth Cloth Cloth Rock Rock Rock
Sample Output
W
HINT
//以下代码会自动添加到程序的开始#include <iostream>
using namespace std;
class RSC
{
private:
char a[21][10];
char b[21][10];
int n;
char result;
int judge(char a,char b);
public:
void input();
void output();
void decide();
};
//以下请给出 成员函数judge
//以下代码会自动添加到程序的末尾
void RSC::input()
{
cin>>n;
int i;
for(i=0; i<n; i++)
cin>> a[i]>>b[i];
}
void RSC::output()
{
decide();
cout<<result<<endl;
}
void RSC::decide()
{
int num=0,i;
for(i=0; i<n; i++)
num = num + judge(a[i][0],b[i][0]);
if(num>0)
result ='W';
else if(num==0)
result= 'D';
else
result = 'L';
}
int main()
{
RSC test;
test.input();
test.output();
return 0;
}
源代码:
#include <iostream> using namespace std; class RSC { private: char a[21][10]; char b[21][10]; int n; char result; int judge(char a,char b); public: void input(); void output(); void decide(); }; //提交起始 int RSC:: judge(char a,char b)//judge函数 { if(a==b) return 0; if(a=='S'&&b=='R') return -1; else return 1; if(a=='R'&&b=='S') return 1; else return -1; if(a=='C'&&b=='R') return 1; else return -1; }//提交结束行 void RSC::input() { cin>>n; int i; for(i=0; i<n; i++) cin>> a[i]>>b[i]; } void RSC::output() { decide(); cout<<result<<endl; } void RSC::decide() { int num=0,i; for(i=0; i<n; i++) num = num + judge(a[i][0],b[i][0]); if(num>0) result ='W'; else if(num==0) result= 'D'; else result = 'L'; } int main() { RSC test; test.input(); test.output(); return 0; }
相关文章推荐
- FT系列touch----dtsi里的gpio 属性
- Can't create handler inside thread that has not called Looper.prepare()解决办法
- rebmuNenohPafosnoitanibmoCretteL.17
- 面试总结
- CXF框架入门实例
- Swift - 短信发送功能的实现
- MAT(Memory Analyzer Tool)工具入门介绍(转)
- 奥姆卡剃刀原理
- 复习action委托
- CDN缓存那些事
- 初学angular-简单的angular指令
- 解决静态库文件导入 找不到问题
- Git之暂存区
- Swift获取手机设备信息
- 10-语言入门-10-韩信点兵
- 解决Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0
- 隐藏电话号码中间四位
- Python 5.2 使用@property
- Beta 分布的应用
- 200多种Android动画效果的强悍框架