YTU 2516: 剪刀石头布
2516: 剪刀石头布
时间限制: 1 Sec 内存限制: 128 MB
提交: 193 解决: 123
题目描述
小慧小时候很喜欢和她的小伙伴们一起玩剪刀(Scissors)、石头(Rock)、布(Cloth)的游戏,但现在她上大学了,和小伙伴们不能经常见面,但可以通过网络交流,她现在很想和小伙伴们重温这个小游戏。
学了c++的你,可以用类帮她完成这个小游戏吗?每局游戏进行n场对战,赢得次数多的是最后的赢家,可以出现平局。
输入
第1行 n(1<=n<=20) ,表示下面有n组对战信息。
从第2行到第n+1行,每行两个英文单词,表示对战信息。小慧的信息是第一列
输出
一个英文字母W或L或D 表示小慧的赢,输或平手。
样例输入
5
Rock Scissors
Scissors Rock
Cloth Cloth
Cloth Rock
Rock Rock
样例输出
W
提示
//以下代码会自动添加到程序的开始
#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)
{
if(a==b)return 0;
if(a=='R'&&b=='S'||a=='C'&&b=='R'||!(a=='S'&&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;
}
#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)
{
if(a==b)return 0;
if(a=='R'&&b=='S'||a=='C'&&b=='R'||!(a=='S'&&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;
}
YTU 2516: 剪刀石头布的更多相关文章
- 【BZOJ-2597】剪刀石头布 最小费用最大流
2597: [Wc2007]剪刀石头布 Time Limit: 20 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 1016 Solved: ...
- ytu 1057: 输入两个整数,求他们相除的余数(带参的宏 + 模板函数 练习)
1057: 输入两个整数,求他们相除的余数 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 177 Solved: 136[Submit][Status ...
- ytu 1058: 三角形面积(带参的宏 练习)
1058: 三角形面积 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 190 Solved: 128[Submit][Status][Web Boar ...
- BZOJ2597 [Wc2007]剪刀石头布(最小费用最大流)
题目大概是说n个人两两进行比赛,问如何安排几场比赛的输赢使得A胜B,B胜C,C胜A这种剪刀石头布的三元组最多. 这题好神. 首先,三元组总共有$C_n^3$个 然后考虑最小化不满足剪刀石头布条件的三元 ...
- ytu 1980:小鼠迷宫问题(DFS 深度优先搜索)
小鼠迷宫问题 Time Limit: 2 Sec Memory Limit: 64 MB Submit: 1 Solved: 1 [Submit][Status][Web Board] Desc ...
- 1. while循环(当循环) 2. do{}while()循环 3. switch cose(多选一) 例子:当选循环下求百鸡百钱 用 switch cose人机剪刀石头布
1. while循环: 当选循环下求百鸡百钱:如下: 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN ...
- HTML5游戏开发,剪刀石头布小游戏案例
剪刀石头布,非常可爱的小游戏,相信大家都非常的怀念这款小游戏,小时候也玩过很多次,陪伴着我的童年的成长,现在是不是还会玩一下,剪刀石头布游戏的规则我们都知道是:剪刀剪布,石头砸剪刀,布包石头.跟朋友. ...
- 李洪强漫谈iOS开发[C语言-039]-剪刀石头布
李洪强漫谈iOS开发[C语言-039]-剪刀石头布
- bzoj2597: [Wc2007]剪刀石头布
Description 在一些一对一游戏的比赛(如下棋.乒乓球和羽毛球的单打)中,我们经常会遇到A胜过B,B胜过C而C又胜过A的有趣情况,不妨形象的称之为剪刀石头布情况.有的时候,无聊的人们会津津乐道 ...
随机推荐
- eclipse 导入svn项目并添加server
1.打开svn资源库 window-->show view-->other-->svn-->svn资源库 2.控制台选中文件夹右键-->检出为--finish 3.添加服 ...
- 九度oj 题目1057:众数
题目1057:众数 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:9744 解决:3263 题目描述: 输入20个数,每个数都在1-10之间,求1-10中的众数(众数就是出现次数最多的数, ...
- JavaEE JDBC 事务
JDBC 事务 @author ixenos 事务 1.概念:我们将一组语句构建成一个事务(trans action),当所有语句顺利执行之后,事务可以被提交(commit):否则,如果其中某个语句遇 ...
- parse XML & js
parse XML & js how to parse xml data in js? https://stackoverflow.com/questions/17604071/parse-x ...
- es6常用语法和特性
简介 首先,在学习之前推荐使用在线转码器 Traceur 来测试 Demo,避免 babel 下的繁琐配置,从而产生畏难情绪. let 命令 在 ES6 之前,JS 只能使用 var 声明变量,或者省 ...
- eclipse安装Aptana 插件,并设置使之能提示css,js,html,帮助编写代码
在Eclipse 4.2 上安装 Aptana 3.2遇到的错误 就是找不到什么文件来着,我在装maven的时候也遇到了. 烦人... (这文章是我还在用eclipse的时候,为了编写js代码的时候提 ...
- 刺激(codevs 1958)
题目描述 Description saffah的一个朋友S酷爱滑雪,并且追求刺激(exitement,由于刺激过度导致拼写都缺了个字母),喜欢忽高忽低的感觉.现在S拿到了一张地图,试图制定一个最长路径 ...
- Quartz.net框架使用
概述:Quartz.NET是一个开源的作业调度框架,非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等. Quartz.NET允许开发人员根据时间间隔(或天)来调度作业.它实现了 ...
- NOIP2012 文化之旅
题目描述 Description 有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不能到达其他有这种文化的国家).不同的国家可 ...
- 显示锁ReentrantLock和Condition的使用
一.ReentrantLock (1).java.util.concurrent.locks包中的ReentrantLock就是重入锁,它实现了Lock接口,Lock加锁和解锁都是显示的.Reentr ...