[NOIP2003 普及组] 乒乓球

题目背景

国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中 111111 分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白 111111 分制和 212121 分制对选手的不同影响。在开展他的研究之前,他首先需要对他多年比赛的统计数据进行一些分析,所以需要你的帮忙。

题目描述

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

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

WWWWWWWWWWWWWWWWWWWWWWLW\texttt{WWWWWWWWWWWWWWWWWWWWWWLW}WWWWWWWWWWWWWWWWWWWWWWLW

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

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

输入格式

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

输出格式

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

样例 #1

样例输入 #1

WWWWWWWWWWWWWWWWWWWW
WWLWE

样例输出 #1

11:0
11:0
1:121:0
2:1

提示

每行至多 252525 个字母,最多有 250025002500 行。

(注:事实上有一个测试点有 250125012501 行数据。)

【题目来源】

NOIP 2003 普及组第一题

思路

这道题没有之前那道题那么简单, 但也没有非常难。首先要用字符输入,一个一个输入,当输入‘E’的时候就结束输入。然后用for循环一个一个看,要看两遍,一个11分制,一个21分制。当扫到有人赢的时候,就可以输出,然后置零继续。然后最后还要输出一次,因为最后还有一次比分。(11分制胜利规则:1.有人分数大于11, 2.分数差大于2分。21分制同理)

C语言AC代码

#include<stdio.h>
int vis[700005];
int main(void){char c;int l=0;while(scanf("%c",&c)&&c!='E'){if(c=='W') vis[++l]=1;else if(c=='L')vis[++l]=2;}int a=0,b=0,i;for(i=1;i<=l;i++){if(vis[i]==1) a++;else b++;if(((a-b)>=2||(b-a)>=2)&&(a>=11||b>=11)) {printf("%d:%d\n",a,b);a=0,b=0;}}printf("%d:%d\n\n",a,b);a=0,b=0;for(i=1;i<=l;i++){if(vis[i]==1) a++;else b++;if(((a-b)>=2||(b-a)>=2)&&(a>=21||b>=21)) {printf("%d:%d\n",a,b);a=0,b=0;}}printf("%d:%d",a,b);return 0;
}

总结

这道题没那么简单,要综合使用while,for,if,数组等知识才可以解出来。

【洛谷题解】P1042 [NOIP2003 普及组] 乒乓球相关推荐

  1. 洛谷:P1042 [NOIP2003 普及组] 乒乓球 C++详解

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

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

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

  3. 信息学奥赛一本通 1981:【18NOIP普及组】对称二叉树 | 洛谷 P5018【NOIP2018 普及组】 对称二叉树

    [题目链接] ybt 1981:[18NOIP普及组]对称二叉树 洛谷 P5018[NOIP2018 普及组] 对称二叉树 [题目考点] 二叉树 [解题思路] 先求出二叉树中各子树的结点数 遍历二叉树 ...

  4. 【洛谷 P1046】[NOIP2005 普及组] 陶陶摘苹果 题解(比较)

    [NOIP2005 普及组] 陶陶摘苹果 题目描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出 10 10 10 个苹果.苹果成熟的时候,陶陶就会跑去摘苹果.陶陶有个 30 30 30 厘米高的 ...

  5. 【洛谷】P1008 [NOIP1998 普及组] 三连击

    [NOIP1998 普及组] 三连击 题目背景 本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序. 题目描述 将 1,2,-,91, 2, \ldots ...

  6. NOIP2003普及组第1题 乒乓球(Table.cpp)-- python3实现

    [NOIP2003 普及组] 乒乓球 - 洛谷 """NOIP2003普及组第1题 乒乓球(Table.cpp)--python3实现 https://www.luogu ...

  7. 信息学奥赛一本通 1925:【03NOIP普及组】麦森数 | OpenJudge NOI 4.4 1708:麦森数 | 洛谷 P1045 [NOIP2003 普及组] 麦森数

    [题目链接] ybt 1925:[03NOIP普及组]麦森数 OpenJudge NOI 4.4 1708:麦森数 洛谷 P1045 [NOIP2003 普及组] 麦森数 [题目考点] 1. 高精度 ...

  8. 信息学奥赛一本通 1924:【03NOIP普及组】栈 | 洛谷 P1044 [NOIP2003 普及组] 栈

    [题目链接] ybt 1924:[03NOIP普及组]栈 洛谷 P1044 [NOIP2003 普及组] 栈 [题目考点] 递推.递归 栈 [解题思路]:一维递推 设数组a,a[i]表示i个数组成的数 ...

  9. luogu1042 乒乓球(NOIP2003普及组第1题)

    luogu1042  乒乓球(NOIP2003普及组第1题) 时空限制    1000ms/128MB 题目背景 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及 ...

  10. [NOIP2003普及组]麦森数(快速幂+高精度)

    [NOIP2003普及组]麦森数(快速幂+高精度) Description 形如2^P-1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2^P-1不一定也是素数.到1998 ...

最新文章

  1. MIMO系统ML检测(最大似然检测)
  2. 联想家庭云中心:天边飘来“故乡的云”
  3. 将Java程序打jar包并运行
  4. android 状态栏、标题栏、屏幕高度
  5. MJRefresh的用法
  6. flutter 透明度动画_Flutter中的动画填充+不透明度动画✨
  7. tomcat中配置jndi数据源以便spring获取
  8. python缩进来分组语句_Python中的语句,缩进和注释
  9. 机器学习-吴恩达-正规方程多变量回归公式
  10. oracle,mysql常用基本操作 字段属性
  11. 择师论(怎么有效的向别人学习)
  12. Ubuntu18.04 orb-slam3编译出现的错误 undefined reference to symbol ‘_ZN3MPI8Datatype4FreeEv‘ libmpi_cxx.so
  13. 使用MVPArms框架时,访问网络没响应。
  14. Java高并发编程之第一阶段,多线程基础深入浅出
  15. 彻底禁止Win10自动更新工具Windows Update Blocker v1.5 汉化版
  16. 《具体数学》部分习题解答3
  17. lighty2.0沙箱版本的协议和配置分析采用ragel 成功案例
  18. mysql math.sqrt_详解MySQL中的SQRT函数的使用方法
  19. 电脑qq语音连不到服务器,我的电脑不能语音聊天是怎么回事?每次qq上都提示:您的麦克风没有声音?我检查了电脑设置没问题...
  20. 运用supervisor管理thinkqueue 和swoole推送

热门文章

  1. MSN聊天记录备份和还原方法
  2. 20172328的结对编程四则运算第二周-整体总结
  3. LLVM编写Pass对程序进行obfuscate
  4. 微信公众号管理欧宁泰php,米拓微信公众号管理应用-MetInfo帮助中心
  5. 国内使用php谷歌翻译_中英文谷歌翻译-PHP
  6. BZOJ 2959 长跑 (LCT+并查集)
  7. 2021年中国人工智能市场发展现状
  8. 一维搜索---黄金分割法
  9. 远程唤醒、WOL、Magic_Packet【转】
  10. cissp怎么维持?cissp维持费用多少?