bzoj1067
题意:
给你下雨量,让你判断每一句话是否正确
题解:
线段树
用来维护判断
代码:
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
const int N=;
struct seg
{
int max;
}tree[N];
int n,m,x[N],y[N],sum[N];
void build(int rt,int L,int R)
{
if (L==R)
{
tree[rt].max=y[L];
return;
}
int mid=(L+R)>>;
build(rt<<,L,mid);
build((rt<<)+,mid+,R);
tree[rt].max=max(tree[rt<<].max,tree[(rt<<)+].max);
}
int query(int rt,int L,int R,int QL,int QR)
{
if (QL>R||QR<L) return -2e9;
if (QL<=L&&QR>=R) return tree[rt].max;
int mid=(L+R)>>;
return max(query(rt<<,L,mid,QL,QR),
query((rt<<)+,mid+,R,QL,QR));
}
int find(int X)
{
int L=,R=n,mid;
while (L<=R)
{
mid=(L+R)>>;
if (x[mid]==X) return mid;
if (x[mid]>X) R=mid-;
if (x[mid]<X) L=mid+;
}
return -;
}
int find_2(int X)
{
int L=,R=n,mid,res;
while (L<=R)
{
mid=(L+R)>>;
if (x[mid]>X) res=mid,R=mid-;
else L=mid+;
}
return res;
}
int find_3(int X)
{
int L=,R=n,mid,res;
while (L<=R)
{
mid=(L+R)>>;
if (x[mid]<X) res=mid,L=mid+;
else R=mid-;
}
return res;
}
int main()
{
scanf("%d",&n);
for (int i=;i<=n;i++) scanf("%d%d",&x[i],&y[i]);
build(,,n);
scanf("%d",&m);
for (int i=,x1,x2,bh1,bh2;i<=m;i++)
{
scanf("%d%d",&x1,&x2);
if (!(x1<x2))
{
puts("false");
continue;
}
bh1=find(x1),bh2=find(x2);
if (bh1==- && bh2==-)
{
puts("maybe");
continue;
}
if (bh2==-)
{
bh2=find_3(x2);
if (bh1+>bh2||query(,,n,bh1+,bh2)<y[bh1])
puts("maybe");
else puts("false");
continue;
}
if (bh1==-)
{
bh1=find_2(x1);
if (bh1>bh2-||query(,,n,bh1,bh2-)<y[bh2])puts("maybe");
else puts("false");
continue;
}
if (!(y[bh1]>=y[bh2]))
{
puts("false");
continue;
}
if (bh1+>bh2-||query(,,n,bh1+,bh2-)<y[bh2])
if (x2-x1==bh2-bh1)puts("true");
else puts("maybe");
else puts("false");
}
return ;
}
bzoj1067的更多相关文章
- [BZOJ1067][SCOI2007]降雨量
[BZOJ1067][SCOI2007]降雨量 试题描述 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”.它的含义是X年的降雨量不超过Y年,且对于任意 Y<Z<X,Z年的降雨量严格 ...
- BZOJ1067 [SCOI2007]降雨量 线段树
欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1067 题意概括 给定n组整数对(Xi,Yi),当Xi<Xj且Yi>=Yj时,如果对于任 ...
- 【BZOJ1067】[SCOI2007]降雨量 RMQ+特判
[BZOJ1067][SCOI2007]降雨量 Description 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”.它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年 ...
- bzoj1067 降雨量&&vijos1265 暴风雨
描述 话说这日,李逍遥与阿奴正欲前往桃花源拿寿葫芦,突然电闪雷鸣,天降暴雨,弄得两人措手不及,只得到附近的树洞避雨. "哎,大理不是本应旱灾的吗?怎么会突降暴雨呢?"李逍遥嘀咕道. ...
- 【BZOJ1067】【POJ2637】降雨量
1067: [SCOI2007]降雨量 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 3004 Solved: 767[Submit][Status] ...
- BZOJ-1067 降雨量 线段树+分类讨论
这道B题,刚的不行,各种碎点及其容易忽略,受不鸟了直接 1067: [SCOI2007]降雨量 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 2859 ...
- [bzoj1067][SCOI2007]降雨量——线段树+乱搞
题目大意 传送门 题解 我国古代有一句俗话. 骗分出奇迹,乱搞最神奇! 这句话在这道题上得到了鲜明的体现. 我的方法就是魔改版线段树,乱搞搞一下,首先借鉴了黄学长的建树方法,直接用一个节点维护年份的区 ...
- 【BZOJ1067】【SCOI2007】降雨量
新人求助,降雨量那题,本机AC提交AC 原题: 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”.它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X年.例 ...
- bzoj1067 降雨量
Description 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”.它的含义是X年的降雨量不超过Y年,且对于任意 Y<Z<X,Z年的降雨量严格小于X年.例如2002,2003, ...
随机推荐
- android中的验证码倒计时
1.如图所示,要实现一个验证码的倒计时的效果 2.实现 图中获取验证码那块是一个button按钮 关键部分,声明一个TimeCount,继承自C ...
- 洛谷P4799 世界冰球锦标赛 CEOI2015 Day2 meet-in-the-middle
正解:折半搜索 解题报告: 先放个传送门QAQ 想先说下部分分?因为包含了搜索背包两个方面就觉得顺便复习下?QwQ 第一档部分分 爆搜 就最最普通的爆搜鸭,dfs(第几场,钱),然后每次可以看可以不看 ...
- python 定义类 学习2
构造函数的变量 也叫做 实例变量 class role(): # 传参数 def __init__(self,name,role,weapon,life_value=100,moneny=15000) ...
- Word 2010文档自动生成目录和某页插入页码
一.Word 2010文档自动生成目录 关于Word文档自动生成目录一直是我身边同学们最为难的地方,尤其是毕业论文,经常因为目录问题,被要求修改,而且每次修改完正文后,目录的内容和页码可能都会发生变化 ...
- Ambari Rest api 使用
最近由于项目的需要在看一些Ambari的api去获取集群的一些信息,获取集群节点的状态信息以及各个服务和组件的信息.然后在我们的数据服务管理平台上去做一些监控运维,现在把一些使用总结一下:官网rest ...
- 整数(质因子)分解(Pollard rho大整数分解)
整数分解,又称质因子分解.在数学中,整数分解问题是指:给出一个正整数,将其写成几个素数的乘积的形式. (每个合数都可以写成几个质数相乘的形式,这几个质数就都叫做这个合数的质因数.) .试除法(适用于范 ...
- 【PGM】Representation--Knowledge Engineering,不同的模型表示,变量的类型,structure & parameters
Part 1. 重要的区别: Template based vs. specific Directed vs. undirected Generative vs. discrimina ...
- 牛客国庆集训派对Day5 Solution
A 璀璨光滑 留坑. B 电音之王 蒙特马利大数乘模运算 #include <bits/stdc++.h> using namespace std; typedef long ...
- HDU4112
对于n*m*k的方块,用手掰成1**1的那么搜需要的步骤是固定的,为n*m*k-,如果用刀切,因为可以把多块叠在一起切,所以对于长度为n的,将他切成0,所需要的步骤数位k 对于n*m*k的方块,用手掰 ...
- 20145325张梓靖 实验二"Java面向对象程序设计"
20145325张梓靖 实验二"Java面向对象程序设计" 程序设计过程 实验内容 使用TDD的方式设计实现复数类 Complex 编写代码 设计实现复数类 Complex,复数类 ...