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, ...
随机推荐
- Python开发【模块】:torndb
Torndb模块 概要:torndb是一个轻量级的基于MySQLdb封装的一个模块,其是tornado框架的一部分.其项目主页为:https://github.com/bdarnell/torndb ...
- Python开发【模块】:sqlalchemy
一.对象映射关系(ORM) orm英文全称object relational mapping,就是对象映射关系程序,简单来说我们类似python这种面向对象的程序来说一切皆对象,但是我们使用的数据库却 ...
- mysql 数据操作 单表查询 limit 限制查询的记录数
mysql; +----+-----------+------+-----+------------+---------+--------------+------------+--------+-- ...
- SpringBoot 集成Spring security
Spring security作为一种安全框架,使用简单,能够很轻松的集成到springboot项目中,下面讲一下如何在SpringBoot中集成Spring Security.使用gradle项目管 ...
- Spark SQL与Hive on Spark的比较
简要介绍了SparkSQL与Hive on Spark的区别与联系 一.关于Spark 简介 在Hadoop的整个生态系统中,Spark和MapReduce在同一个层级,即主要解决分布式计算框架的问题 ...
- C#字母转换成数字/数字转换成字母 - ASCII码转换
字母转换成数字 byte[] array = new byte[1]; //定义一组数组arrayarray = System.Text.Encoding.ASCII.GetBytes(strin ...
- Android 压力测试工具Monkey
原文地址http://www.syhm52.com/tools/17.html 一.Monkey定义探索软件测试工具有哪些,本文主要介绍Monkey工具.Monkey测试是Android平台自动化测试 ...
- EF Code First学习笔记:数据库创建(转)
控制数据库的位置 默认情况下,数据库是创建在localhost\SQLEXPRESS服务器上,并且默认的数据库名为命名空间+context类名,例如我们前面的BreakAway.BreakAwayCo ...
- Python: 分数运算
fractions 模块可以被用来执行包含分数的数学运算 >>> from fractions import Fraction >>> a = Fraction(5 ...
- 什么是ASCII码文本文件
标准ASCII码方式(也称文本方式)存储的文件,更确切地说,英文.数字等字符存储的是ASCII码.文本文件中除了存储文件有效字符信息(包括能用ASCII码字符表示的回车.换行等信息)外,不能存储其他任 ...