BZOJ 1067: [SCOI2007]降雨量(线段树/RMQ)
Description 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”。它的含义是X年的降雨量不超过Y年,且对于任意 Y<Z<X,Z年的降雨量严格小于X年。例如2002,2003,2004和2005年的降雨量分别为4920,5901,2832和3890, 则可以说“2005年是自2003年以来最多的”,但不能说“2005年是自2002年以来最多的”由于有些年份的降雨量未 知,有的说法是可能正确也可以不正确的。 Input 输入仅一行包含一个正整数n,为已知的数据。以下n行每行两个整数yi和ri,为年份和降雨量,按照年份从小 到大排列,即yi<yi+1。下一行包含一个正整数m,为询问的次数。以下m行每行包含两个数Y和X,即询问“X年是 自Y年以来降雨量最多的。”这句话是必真、必假还是“有可能”。 Output 对于每一个询问,输出true,false或者maybe。 题解: 题目已经说的很清楚要求区间最值了…就是判断条件时太恶心了… 解释写在代码里了 AC代码(线段树): # pragma GCC optimize(2) # include <bits/stdc++.h> # include <ext/rope> using namespace std ; using namespace __gnu_cxx ; # define pii pair<int,int> #