C++模拟与高精度——乒乓球
题目背景
国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中 1111 分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白 1111 分制和 2121 分制对选手的不同影响。在开展他的研究之前,他首先需要对他多年比赛的统计数据进行一些分析,所以需要你的帮忙。
题目描述
华华通过以下方式进行分析,首先将比赛每个球的胜负列成一张表,然后分别计算在 11 分制和 21 分制下,双方的比赛结果(截至记录末尾)。
比如现在有这么一份记录,(其中 W 表示华华获得一分, L 表示华华对手获得一分):
WWWWWWWWWWWWWWWWWWWWWWLW
在 11分制下,此时比赛的结果是华华第一局 11比 0 获胜,第二局 11 比 0 获胜,正在进行第三局,当前比分 1 比 1。而在 21 分制下,此时比赛结果是华华第一局 21 比 0 获胜,正在进行第二局,比分 2 比 1。如果一局比赛刚开始,则此时比分为 0 比 0。直到分差大于或者等于 2,才一局结束。
你的程序就是要对于一系列比赛信息的输入(WL 形式),输出正确的结果。
输入格式
每个输入文件包含若干行字符串,字符串有大写的 W 、L 和E 组成。其中E 表示比赛信息结束,程序应该忽略E 之后的所有内容。
输出格式
输出由两部分组成,每部分有若干行,每一行对应一局比赛的比分(按比赛信息输入顺序)。其中第一部分是 11 分制下的结果,第二部分是 21分制下的结果,两部分之间由一个空行分隔。
分析:
这道题就是判断一下在11分制和21分制下的比分,如果比分大于等于2并且有一方分值到11(11分制)或者21(21分制)就算一句完事。先定义一个数组,如果是W就等于1代表赢了,如果是L就等于2代表输了, 在对这个数组进行判定,如果是1,赢的局数就加1,如果是2就输的局数加一,如果是0就代表结束。在根据输赢的比分进行判定,如果差值大于等于2并且输赢的局数有等于11的,就输出比分,代表这局结束,进行下一局,直到结束。21分制的与11分制类似。
#include<bits/stdc++.h>
using namespace std;
int win[25*2001];//要设置的大一点,每行最多25个字母,最多2000行,有一个测试点是2001行
int ww = 0, ll = 0;
int main() {char c;int i,m,n=0;for (i = 1; cin >> c && c != 'E'; i++) {if (c == 'W') {win[i] = 1;}else {win[i] = 2;}}//11分制for (int i = 1; 1; i++) {if (win[i] == 1)ww++;//赢了加一if (win[i] == 2)ll++;//输了加一if (win[i] == 0) {//结束cout << ww << ":" << ll << endl;break;}if (abs(ww - ll) >= 2) {//分值相差大于等于2if (ww >= 11 || ll >= 11) {//并且有一方分值到11cout << ww << ":" << ll << endl;ww = 0;ll = 0;}}}cout << endl;ww = 0;ll = 0;//21分制与11分制类似for (int i = 1; 1; i++) {if (win[i] == 1)ww++;//赢了加一if (win[i] == 2)ll++;//输了加一if (win[i] == 0) {//结束cout << ww << ":" << ll << endl;break;}if (abs(ww - ll) >= 2) {//分值相差大于等于2if (ww >= 21 || ll >= 21) {//并且有一方分值到21cout << ww << ":" << ll << endl;ww = 0;ll = 0;}}}return 0;
}
C++模拟与高精度——乒乓球相关推荐
- 洛谷专题训练 ——【算法1-1】模拟与高精度
洛谷题单[算法1-1]模拟与高精度 ACM-ICPC在线模板 题单链接: [算法1-1]模拟与高精度 下面的这一坨都是洛谷题单上的东东 题单简介 恭喜大家完成了第一部分语言入门,相信大家已经可以使用 ...
- 链表,字符串题,模拟与高精度
文章目录 1.字母转换为大写 4.24 ① 2.小猴记单词 1125 ② 3.花生采摘 4.25 ①删除链表节点 ②删除倒数第n个节点 4.26 ①反转链表 4.27 ①171.转化为26进制,exc ...
- 模拟与高精度——字符串的展开
模拟与高精度--字符串的展开 题目描述 输入格式 共两行. 第1行为用空格隔开的3个正整数,依次表示参数p1,p2,p3. 第2行为一行字符串,仅由数字.小写字母和减号"-"组成. ...
- 洛谷算法题单:模拟与高精度例题(上)
一:模拟 想要利用计算机解决现实生活中的一些复杂的问题时,建立模型是解决问题的关键. 举个生活中常见的例子:我们拿到了某次数学考试的成绩单,现在需要知道谁考得最好.当然不能把成绩单对着电脑晃一晃,然后 ...
- 洛谷题单 算法1-1 模拟和高精度
1 乒乓球 题目背景 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及.其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役.华华就是其中 ...
- week1模拟与高精度
模拟:将现实生活中的情况转化为程序中的过程和变量 即把现实规则规范为编程预言. 尽量把每个部分模块化,写成函数.结构体或类. 例题: 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒 ...
- 洛谷算法题单:模拟与高精度例题(下)
接着上篇的例题. 1.洛谷P4924魔法少女小Scarlet 题目描述: Scarlet最近学会了一个数组魔法,她会在n∗n二维数组上将一个奇数阶方阵按照顺时针或者逆时针旋转90°, 首先,Scarl ...
- 1. 帮贡排序-模拟与高精度(普及/提高-)
文章目录 问题描述 问题分析 代码实现 运行结果 总结 问题描述 在absi2011的帮派里,死号偏多.现在absi2011和帮主等人联合决定,要清除一些死号,加进一些新号,同时还要鼓励帮贡多的人 ...
- C++模拟与高精度——玩具谜题
题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业. 有一天, 这些玩具小人把小南的眼镜藏了起来. 小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外.如下图: 这时singer告诉 ...
最新文章
- ACMNO.41C语言-数字调序 有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数,见图。写一函数:实现以上功能,在主函数中输入n个数和输出调整后的n个数
- 如何开发一个属于自己的小程序
- P4512 【模板】多项式除法
- CentOS7中通过二进制文件与配置环境变量的方式安装Node
- Canvas API初步学习
- 数据结构与算法 | 二分查找
- 终于要来了!华为P50将提供两个版本:国内仅有鸿蒙
- 2684 亿背后的虚拟化技术:双 11 All on 神龙 | 问底中国 IT 技术演进
- apache+weblogic获取客户端访问的真正ip
- 计算机导航医学应用,计算机导航技术在口腔颌面外科应用中的新发展
- 2018-2019-2 20165313 《网络对抗技术》 Exp6 信息搜集与漏洞扫描
- python 操作目录注意事项
- uva 11234 Expressions
- loadrunner-11安装+破解+汉化(提供安装包,破解方式,汉化包)
- Oracle使用Shell脚本导出Excel表格
- Git 提交代码步骤
- bp神经网络模型的优缺点,什么是BP神经网络模型?
- mt6771(Helio P60)套片开发资料下载,mt6771处理器性能
- 织梦后台模块管理空白不显示的解决方法
- 时间处理 - Joda