hdoj 5443 The Water Problem【线段树求区间最大值】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5443
刷道水题助助兴
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<stack>
#define MAX 2100
#define INF 0x7fffff
using namespace std;
int n,m;
int Max[MAX];
void pushup(int o)
{
Max[o]=max(Max[o<<1],Max[o<<1|1]);
}
void gettree(int o,int l,int r)
{
if(l==r)
{
scanf("%d",&Max[o]);
return ;
}
int mid=(l+r)>>1;
gettree(o<<1,l,mid);
gettree(o<<1|1,mid+1,r);
pushup(o);
}
int find(int o,int l,int r,int L,int R)
{
if(L<=l&&R>=r)
{
return Max[o];
}
int ans=0;
int mid=(l+r)>>1;
if(R<=mid)
ans=max(ans,find(o<<1,l,mid,L,R));
else if(L>mid)
ans=max(ans,find(o<<1|1,mid+1,r,L,R));
else
{
ans=max(ans,find(o<<1,l,mid,L,R));
ans=max(ans,find(o<<1|1,mid+1,r,L,R));
}
return ans;
}
int main()
{
int t,i,j,a,b;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
gettree(1,1,n);
scanf("%d",&m);
while(m--)
{
scanf("%d%d",&a,&b);
printf("%d\n",find(1,1,n,a,b));
}
}
return 0;
}
hdoj 5443 The Water Problem【线段树求区间最大值】的更多相关文章
- hdu 5443 The Water Problem 线段树
The Water Problem Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php? ...
- hdoj 1166 敌兵布阵【线段树求区间最大值+单点更新】
敌兵布阵 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- 2016年湖南省第十二届大学生计算机程序设计竞赛---Parenthesis(线段树求区间最值)
原题链接 http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1809 Description Bobo has a balanced parenthes ...
- xdoj-1324 (区间离散化-线段树求区间最值)
思想 : 1 优化:题意是覆盖点,将区间看成 (l,r)转化为( l-1,r) 覆盖区间 2 核心:dp[i] 覆盖从1到i区间的最小花费 dp[a[i].r]=min (dp[k])+a[i]s; ...
- hdu 1754 I Hate It (线段树求区间最值)
HDU1754 I Hate It Time Limit:3000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u D ...
- HDU-1754 I Hate It(线段树,区间最大值)
很多学校流行一种比较的习惯.老师们很喜欢询问,从某某到某某当中,分数最高的是多少. 这让很多学生很反感. 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问.当然,老师 ...
- 【线段树求区间第一个不大于val的值】Lpl and Energy-saving Lamps
https://nanti.jisuanke.com/t/30996 线段树维护区间最小值,查询的时候优先向左走,如果左边已经找到了,就不用再往右了. 一个房间装满则把权值标记为INF,模拟一遍,注意 ...
- HDU 2795 Billboard 线段树,区间最大值,单点更新
Billboard Time Limit: 20000/8000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- hdu1166 敌兵布阵(线段树 求区间和 更新点)
敌兵布阵 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
随机推荐
- couchDB入门
无意翻到一本新书<CouchDB权威指南> 发现这就是传说中的NoSQL,看排第一的是mangodb,redis有些人说是,有些人说不是. CouchDB的开发很天才,直接可以通过java ...
- Nigix快速上手注意事项
linux下,主要关于配置,包括主从,待续......
- CI的面向切面的普通权限验证
第一步:开启CI的钩子配置,此次不多说看CI手册即可. 第二步:在cofig/hooks.php中进行钩子配置,CI手册中有记载 <?php defined('BASEPATH') OR exi ...
- PHP模块设计
1.强内聚,功能尽量在类的内部完成 2.弱耦合,开放尽量少的方法给外部调用
- 表格td、th强制换行
表格td.th强制换行 <table style="table-layout:fixed" width="100%"> <tr>< ...
- WPF中的字体改善
WPF4对字体渲染做了很大的改善,增加了TextOptions属性,该属性可以设置TextFormattingMode,TextRenderingMode,TextHintingMode 1.Text ...
- 开发C# .net时使用的数据库操作类SqlHelp.cs
练习开发WPF程序的时候,是这样写的,虽然很简单,相必很多新手会用到,所以拿来共享一下, using System; using System.Collections.Generic; using S ...
- WebService学习整理(一)——客户端三种调用方式整理
1 WebService基础 1.1 作用 1, WebService是两个系统的远程调用,使两个系统进行数据交互,如应用: 天气预报服务.银行ATM取款.使用邮箱账号登录各网站等. 2, ...
- leetcode第四题:Median of Two Sorted Arrays (java)
Median of Two Sorted Arrays There are two sorted arrays A and B of size m and n respectively. Find t ...
- BZOJ 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛
Description FJ的N(1 <= N <= 100)头奶牛们最近参加了场程序设计竞赛:).在赛场上,奶牛们按1..N依次编号.每头奶牛的编程能力不尽相同,并且没有哪两头奶牛的水平 ...