首页 > 其他分享 >CF1131B 题解

CF1131B 题解

时间:2023-02-24 17:22:48浏览次数:51  
标签:得分 int 题解 CF1131B flag lstb lsta define

题目传送门

好水的绿题,当放松了。

题目分析

为了方便表述,定义 \(lsta,lstb,nowa,nowb\),分别表示上次双方的得分以及当前的得分。

考虑分讨,若 \(lsta=lstb\),贡献即 \(\min(nowa,nowb)-lsta\)。

上次得分不同的情况有 \(2\) 种,但本质上是一样的,因此我们假设 \(lsta<lstb\)。

显然平局只会在落后方当前得分追上了领先方的上次得分时才会发生,在此条件下,贡献为 \(\min(nowa,nowb)-lstb+1\)。

贴上代码

#include<bits/stdc++.h>
#define debug puts("Shiina_Mashiro_kawaii")
#define ok printf("%d\n",ans2)
#define no puts("-1")
// #define int long long
using namespace std;
int read(){
	int x=0,f=1;char c=getchar();
	while(c<'0'||c>'9'){
		if(c=='-') f=-1;
		c=getchar();
	}
	while(c>='0'&&c<='9'){
		x=x*10+c-48;
		c=getchar();
	}
	return x*f;
}
const int maxn=10010;
int n;
int ans;
int flag;
int a[maxn],b[maxn];
inline void init(){
	n=read();ans=1;
	for(register int i=1;i<=n;++i){
		a[i]=read();b[i]=read();
	}
	ans+=min(a[1],b[1]);
}
int main(){
	init();
	for(register int i=2;i<=n;++i){
		if(a[i-1]<b[i-1]) flag=1;
		else if(a[i-1]>b[i-1]) flag=2;
		else flag=3;
		int minn=min(a[i],b[i]);
		if(flag==1){
			if(a[i]>=b[i-1]) ans+=minn-b[i-1]+1;
		}
		else if(flag==2){
			if(a[i-1]<=b[i]) ans+=minn-a[i-1]+1;
		}
		else ans+=minn-a[i-1];
	}
	printf("%d",ans);
}

标签:得分,int,题解,CF1131B,flag,lstb,lsta,define
From: https://www.cnblogs.com/yizhixiaoyun/p/17152257.html

相关文章

  • P6666 [清华集训2016] 数据交互 题解
    ##P6666[清华集训2016]数据交互题解###简要题意:n个点的树,m次操作,分别为添加一条路径$(u_i,v_i,w_i)$,和撤消一条路径,每一次操作后求出一条路径使得与这条路径有交的......
  • P8422 题解
    前言题目传送门!更好的阅读体验?第三道大模拟,写篇题解庆祝一下。文中粗体字是我踩坑的地方,欢迎统计我被坑了多少次。思路终局奖分很简单,放在主函数里,所以我们看每次的......
  • 树剖练习题题解总和(动态更新)
    这篇博客的练习题题解1、P3384【模板】轻重链剖分/树链剖分模板题,详见此#include<iostream>#include<cstdio>#include<vector>usingnamespacestd;intn,m,r,p,t[......
  • P3571 [POI2014]SUP-Supercomputer 题解
    首先有一个结论,树中存在一个深度\(dep\),使得深度小于等于\(dep\)的点只需\(dep\)次覆盖完,而大于\(dep\)的除最后一次外其他每次都可以填充\(k\)次。证明:在\(dep......
  • P4768 [NOI2018] 归程 题解
    这是一个悲伤的题目,自这道题后,\(\text{Noi}\)再无\(\text{SPFA}\)。首先讲一下重构树是啥。重构树是基于\(\text{kurskal生成树}\)算法的一棵树,对于每一次合并一条......
  • P3247 [HNOI2016]最小公倍数 题解
    题意简述:给定一个无向图,边权带两个值\((a,b)\),给定\(q\)次询问,每次询问给定两个点,求两个点直接是否有\(\max(a)=x\)且\(\max(b)=y\)的简单或非简单路径。解:如果......
  • P2489 [SDOI2011]迷宫探险 题解
    题意简述:一个\(n\timesm\)的带墙体单入口多出口迷宫中有\(k\)个陷阱,陷阱分为有害或无害,有害会使人掉血,给出所有垃圾的有害与无害的所有排列组成的概率,给定人的血量,求......
  • P4416 [COCI2017-2018#1] Plahte 题解
    题意简述:给定\(n\)个互不相交,可以重叠的矩阵,对某些点染色,这个点上的所有矩阵会被染上这个颜色,求最后每个矩阵会有多少种颜色。解:我们可以先把矩阵拆成上下两条水平线......
  • CF1034A Enlarge GCD 题解
    题意简述:删去最少的数使所有的数的\(\text{gcd}\)增加。解:先对每个数除以所有数的\(\text{gcd}\),然后剩下的需要找到所有数的质因子,找到一个最多的序列中数拥有的质......
  • CF436E Cardboard Box 题解
    一道经典的反悔贪心题。考虑每次选择使总星数加一,那么总共有四种情况。一、对于一关没有星,选一颗星,代价为\(a_i\)。二、对于一关有一颗星,再选一颗星,代价为\(b_i-a_i\)......