模拟算法指的是让程序完整地按照题目叙述的方式运行得到答案!

此题选自洛谷P1042

根据题意,只要对读入的内容就行统计即可。

分别对两种赛制进行计算。

需要注意的是,读到‘E’就停止了,每局结束也得输出正在进行当中的比赛,哪怕是0:0

题目描述
华华通过以下方式进行分析,首先将比赛每个球的胜负列成一张表,然后分别计算在1111分制和2121分制下,双方的比赛结果(截至记录末尾)。

比如现在有这么一份记录,(其中W表示华华获得一分,L表示华华对手获得一分):

WWWWWWWWWWWWWWWWWWWWWWLW

在1111分制下,此时比赛的结果是华华第一局1111比00获胜,第二局1111比00获胜,正在进行第三局,当前比分11比11。而在2121分制下,此时比赛结果是华华第一局2121比00获胜,正在进行第二局,比分22比11。如果一局比赛刚开始,则此时比分为00比00。直到分差大于或者等于22,才一局结束。

你的程序就是要对于一系列比赛信息的输入(WLWL形式),输出正确的结果。

输入格式
每个输入文件包含若干行字符串,字符串有大写的WW、LL和EE组成。其中EE表示比赛信息结束,程序应该忽略E之后的所有内容。

输出格式
输出由两部分组成,每部分有若干行,每一行对应一局比赛的比分(按比赛信息输入顺序)。其中第一部分是1111分制下的结果,第二部分是2121分制下的结果,两部分之间由一个空行分隔。

输入输出样例
输入

WWWWWWWWWWWWWWWWWWWW
WWLWE
输出
11:0
11:0
1:1

21:0
2:1
说明/提示
每行至多25个字母,最多有2500行

解题代码:

#include<stdio.h>
#include<iostream>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<queue>
using namespace std;
int n=0,f[2]={11,21};
int a[25*2500+10];
int main(){char tmp;while(1){cin>>tmp;if(tmp == 'E') break;else if(tmp == 'W') a[n++] = 1;else if(tmp == 'L') a[n++] = 0;}for(int k=0;k<2;k++){int w=0,l=0;for(int i=0;i<n;i++){w += a[i], l += 1 - a[i];if(max(w,l)>=f[k] && abs(w-l)>=2){cout<<w<<":"<<l<<endl;w = 0, l = 0;}}cout<<w<<":"<<l<<endl;cout<<endl;}return 0;
}

模拟——乒乓球(洛谷 P1042)相关推荐

  1. 【模拟】洛谷 P1000 超级玛丽游戏

    题目背景 本题是洛谷的试机题目,可以帮助了解洛谷的使用. 建议完成本题目后继续尝试P1001.P1008. 题目描述 超级玛丽是一个非常经典的游戏.请你用字符画的形式输出超级玛丽中的一个场景. *** ...

  2. 洛谷——P1042 乒乓球

    题目背景 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及.其中1111分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役.华华就是其中一位,他 ...

  3. 乒乓球(洛谷-P1042)

    题目背景 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及.其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役.华华就是其中一位,他退役 ...

  4. 洛谷P1042 [NOIP2003 普及组] 乒乓球

    #include<bits/stdc++.h> using namespace std; int win[62503]; int w,l;int main() {char s;for(in ...

  5. 根据特殊EOF的序列判断比赛输赢(洛谷P1042题题解,Java语言描述)

    题目要求 P1042题目链接 分析 本题的EOF显然是'E',其后就算有任何内容也都与我们需要的数据无关啦,这是一定要记住的. 不能直接将scanner.nextLine()的数据用于算法,因为要处理 ...

  6. 【模拟】洛谷 P1058 立体图

    题目描述 小渊是个聪明的孩子,他经常会给周围的小朋友们将写自己认为有趣的内容.最近,他准备给小朋友们讲解立体图,请你帮他画出立体图. 小渊有一块面积为m*n的矩形区域,上面有m*n个边长为1的格子,每 ...

  7. [模拟字符串] [洛谷] P2788 数学1(math1)- 加减算式

    水题一道 也是第一篇博客  欢迎大牛来喷 思路非常简单 把字符串拆为单个数字 譬如算式1+2-3+1998可以拆为1,+2,-3,+1998 将各个数字单独转换为int型 最后求和 #include ...

  8. 洛谷算法题单:模拟与高精度例题(上)

    一:模拟 想要利用计算机解决现实生活中的一些复杂的问题时,建立模型是解决问题的关键. 举个生活中常见的例子:我们拿到了某次数学考试的成绩单,现在需要知道谁考得最好.当然不能把成绩单对着电脑晃一晃,然后 ...

  9. P1042 乒乓球(模拟,字符串,不指定输入,洛谷,java)

    洛谷链接:https://www.luogu.com.cn/problem/P1042 借鉴链接:https://blog.csdn.net/a1439775520/article/details/9 ...

最新文章

  1. 一天一个设计模式(3)——单例模式
  2. Django model 中的 class Meta 详解
  3. 1-100以内的数求和,求出当和第一次大于20的当前数
  4. 《WTM送书活动:向更遥远的星辰大海起航~》
  5. 初二物理模型有哪些_初二是成绩下滑的高危期,做好这5点成绩涨涨涨!(附全学科提升技巧,家长转给孩子!)...
  6. log4j 禁止类输出日志_log4j 2过滤spring日志遇到的问题
  7. 我用Python帮学校写了一款图书管理系统!教导员居然请我吃饭
  8. Flutter打包安卓提示请使用 -Xlint:deprecation 重新编译、请使用 -Xlint:unchecked 重新编译
  9. linux首次安装mysql密码是多少,Linux小白,初次安装MySQL,大神请绕路
  10. Printer Processor 导致的一个问题
  11. 1.5万字详述 | 全开源:python写小游戏+AI强化学习与传统DFS/BFS控制分别实现
  12. C语言中的++和--
  13. BP算法和RNN_RNN/LSTM BPTT详细推导以及梯度消失问题分析
  14. 《软件方法》强化自测题-需求(2)
  15. hmcl手机版_hmcl启动器手机版
  16. 机器学习十大算法案例
  17. Web服务器Nginx
  18. SAN光纤交换机常用命令整理(转)
  19. Ubuntu安装微软Onedrive教程
  20. 台湾清华大学计算机网络--001

热门文章

  1. 什么是 XDoclet?
  2. 深圳增强互动科技_增强女性在科技领域的十项原则
  3. 开源 free的理解_如何理解任何开源混乱
  4. 前端:CSS/08/框架
  5. 3W | 跟着小小学会这些 Java 工程师面试题,月薪至少 3 W
  6. 实战 | WebMagic 爬取某保险经纪人网站经纪人列表之网站列表爬取
  7. Bootstrap三角箭头.caret 类
  8. 修复IE下列表 li 的阶梯Bug
  9. ROS Rviz 显示轨迹 Python
  10. 视觉SLAM笔记(45) 搭建 VO 框架