[luoguP1042] 乒乓球(模拟)

传送门

终于过了这sb题了。

当初我连这道题都A不了(╯▔皿▔)╯

代码

#include <cstdio>
#include <iostream>
#define N 1000001
#define abs(x) ((x) < 0 ? -(x) : (x))

int n = 1, sum1, sum2;
char s[N];

int main()
{
	int i;
	while(std::cin >> s[n])
		if(s[n] == ‘E‘) break;
		else n++;
	n--;
	for(i = 1; i <= n; i++)
	{
		s[i] == ‘W‘ ? sum1++ : sum2++;
		if((sum1 >= 11 && abs(sum1 - sum2) >= 2) || (sum2 >= 11 && abs(sum1 - sum2) >= 2))
		{
			printf("%d:%d\n", sum1, sum2);
			sum1 = sum2 = 0;
		}
	}
	printf("%d:%d\n", sum1, sum2);
	sum1 = sum2 = 0;
	puts("");
	for(i = 1; i <= n; i++)
	{
		s[i] == ‘W‘ ? sum1++ : sum2++;
		if((sum1 >= 21 && abs(sum1 - sum2) >= 2) || (sum2 >= 21 && abs(sum1 - sum2) >= 2))
		{
			printf("%d:%d\n", sum1, sum2);
			sum1 = sum2 = 0;
		}
	}
	printf("%d:%d\n", sum1, sum2);
	return 0;
}

  

时间: 2024-12-30 01:56:27

[luoguP1042] 乒乓球(模拟)的相关文章

[NOIP2003] 普及组

乒乓球 模拟 1 /*By SilverN*/ 2 #include<iostream> 3 #include<algorithm> 4 #include<cstring> 5 #include<cstdio> 6 #include<cmath> 7 using namespace std; 8 const int mxn=15000; 9 char s[50]; 10 int a[mxn],b[mxn];//11分制胜负计数 11 int c[

Codeforces Round #397 by Kaspersky Lab and Barcelona Bootcamp (Div. 1 + Div. 2 combined) A B C D 水 模拟 构造

A. Neverending competitions time limit per test 2 seconds memory limit per test 512 megabytes input standard input output standard output There are literally dozens of snooker competitions held each year, and team Jinotega tries to attend them all (f

2003乒乓球

题目描述 Description 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及.其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役.华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白11分制和21分制对选手的不同影响.在开展他的研究之前,他首先需要对他多年比赛的统计数据进行一些分析,所以需要你的帮忙. [问题描述]华华通过以下方式进行分析,首先将比赛每个球的胜负列成一张表,然后分别计算在11分制和21分制下,双方的比赛

洛谷 P1042 乒乓球 题解

此文为博主原创题解,转载时请通知博主,并把原文链接放在正文醒目位置. 题目链接:https://www.luogu.org/problem/show?pid=1042 题目背景 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及.其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役.华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白11分制和21分制对选手的不同影响.在开展他的研究之前,他首先需要对他多年比赛的统计数据进行一些

全球乒乓球总决赛

观众朋友们,大家好,您现在收看的是2019年全球乒乓球总决赛,下面有请双方选手上场 def printIntroduce(): print('This program simulates a game between two players,A and B') print('Probability (a number between 0 and 1) is used!') 经过我们权威专家对两位选手之前比赛表现,估算出两位选手的大概实力 def getInputs(): a=eval(input

体育竞技模拟比赛

乒乓球比赛基本规则: 一方首先具有发球权,双方连续击打,球落地则该回合结束.如果输掉这一回合的是发球方,双方均不加分,但发球权要交给另一方.如果发球方赢得了这一回合,则发球方赢得1分,并继续拥有发球权.比赛总共进行n 局.一局比赛中,先得11分的一方为胜方,10平后,先多得2分得一方为胜方,胆大的淘汰赛采用七局四胜制,双打的淘汰赛和团体赛采用五局三胜制. 采用自顶向下的程序设计 步骤一:打印程序的介绍性信息 步骤二:获得运行需要的参数,即porbA,porbB,n 步骤三:利用球员A和B得能力值

预测乒乓球比赛成绩

我们通过自顶向下,从简到难的方式进行一步步地分解,设计比赛的代码 下面是通过分析乒乓球比赛所设计出的代码: from random import randomdef printIntro(): print("这个程序模拟两个选手A和B的乒乓球赛") print("程序运行需要A和B的能力值(0到1之间)")def getInputs(): a=eval(input("请输入选手A的能力值(0-1):")) b=eval(input("请

羽毛球竞技模拟

一.体育竞技模拟分析简要介绍 体育竞技模拟分析,是个IPO问题,大致过程如下: 输入:两个球员(球员A和B)的能力概率,模拟比赛的场次 处理:模拟比赛过程 输出:球员A和B分别赢得球赛的概率 二.程序设计方法 程序设计有自顶向下和自底向上两种方法,此处重点介绍自顶向下. 自顶向下的基本思想:以一个总问题出发,试图把它表达为很多小问题组成的解决方案,再用同样的技术依次攻破每个小问题,最终问题变得非常小,也就是化整为零.然后把所有的碎片组合起来,就可以得到一个程序. 自顶向下设计: 1.顶层设计 体

CentOS系统启动及内核大破坏模拟实验

讲过了centos的启动流程,此时是不是想来点破坏呢?那就尽情的玩耍吧,记得在实验之前拍个快照,万一哪个环节错误恢复不回来了呢,毕竟数据无价,话不多说,开始. 一.删除伪系统根.(ramdisk文件) (1)模拟误操作删除ramdisk文件. ①模拟误删除initramfs-3.10.0-514.el7.x86_64.img文件. ②为当前正在使用的内核重新制作ramdisk文件 格式为:mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) (