E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
HDU2795
HDU2795
Billboard【线段树 点修改+区间查询】
Billboardhttp://acm.hdu.edu.cn/showproblem.php?pid=2795TimeLimit:20000/8000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):30888AcceptedSubmission(s):12391ProblemDescriptionAtth
Enjoy_process
·
2020-07-10 23:56
数据结构
hdu2795
线段树应用:找到线段树中>=给定值的第一个元素位置 并 更新该点)
问题描述在大学的入口处,有一个巨大的矩形广告牌,大小为h*w(h是它的高度,w是它的宽度)。董事会是发布所有可能公告的地方:最近的节目比赛,餐厅菜单的变化以及其他重要信息。9月1日,广告牌是空的。一个接一个,公告开始被放在广告牌上。每个公告都是单位高度的纸条。更具体地,第i个通告是大小为1*wi的矩形。当有人在广告牌上发布新的公告时,她总是会选择公告的最高位置。在所有可能的最高职位中,她总是选择最
凌晨四点的洛杉矶fly
·
2020-07-05 08:54
线段树
hdu2795
-- Billboard 线段树 详解
题目通道
hdu2795
题目大意在一个广告牌中放通告,每个通告宽为wi,高为1,放通告时尽量往上放,再在此基础上尽可能靠左放。问每块通告放置的位置(无处可放则输出-1)。
ZHurric
·
2020-07-04 09:09
#
线段树
线段树题目
HDU2795
广告牌HDU3308LCIScodeforces739CAlyonaandtowersHDU5493QueueHDU—2795广告牌(单点查询,单点更新)题意:有一个h*w的广告牌,有很多
bllsll
·
2018-01-18 16:03
线段树
树状数组
HDU2795
Billboard题解
问题不难,简单的线段树模板题,但是有两个地方值得学习一个是有height和n中小的那个值进行建树,在不影响题意的前提下节省了空间内存二是在写函数的时候不能指望一个函数解决太多事情,就Update()来说,开始我是把不能存放的情况也加进去,后来出现WA,将函数简化后,把不能放的情况拿出来,简化了代码的复杂程度,也成功AC程序源代码:#include#include#include#include#i
csdn_Coder_T
·
2017-09-28 21:28
HDU
HDU 2795 Billboard (线段树,单点查询)
HDU2795
一个h*w的公告牌,要在其上贴公告,尽量往上,同一高度尽量靠左。求第n个广告所在的行数。没有合适的位置贴了则输出-1。
Strokess
·
2016-03-27 19:00
hdu2795
Billboard 线段树单点更新区间最值
BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):17336 AcceptedSubmission(s):7318ProblemDescriptionAttheentrancetotheuniversity,thereisahugere
EventQueue
·
2016-03-27 18:00
线段树
hduoj
HDU2795
线段树之单点更新
点击打开链接 题意:在一块h*w的矩形板上,要求贴1*Wi的广告,尽量往左往上的贴广告,如果贴不上的话,输出-1;否则输出这个小广告贴在了第几行上。分析:可以用线段树保存每一行的长度,贴上广告之后便更新自己的值,线段树可以做到快速的查询和更新,下面有注释。#include #include #include #include #include usingnamespacestd; typedef
Dan__ge
·
2016-03-09 19:00
数据结构
线段树
ACM
hdu2795
在学校的入口处有一个巨大的矩形广告牌,高为h,宽为w。所有种类的广告都可以贴,比如ACM的广告啊,还有餐厅新出了哪些好吃的,等等。。在9月1号这天,广告牌是空的,之后广告会被一条一条的依次贴上去。每张广告都是高度为1宽度为wi的细长的矩形纸条。贴广告的人总是会优先选择最上面的位置来帖,而且在所有最上面的可能位置中,他会选择最左面的位置,而且不能把已经贴好的广告盖住。如果没有合适的位置了,那么这张广
liuzhan214
·
2016-01-26 19:00
ACM
HDU2795
Billboard
BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):16831 AcceptedSubmission(s):7123题目大意:有一块高(h)X宽(w)板子,上面要贴广告,广告条的高度均为1,长为给定的按先后顺序的数,询问广告贴在哪个位置,
lv414333532
·
2016-01-22 17:00
【
hdu2795
】Billboard
ProblemDescriptionAttheentrancetotheuniversity,thereisahugerectangularbillboardofsizeh*w(hisitsheightandwisitswidth).Theboardistheplacewhereallpossibleannouncementsareposted:nearestprogrammingcompetit
DMoon
·
2016-01-03 17:00
hdu2795
Billboard(线段树)
BillboardTimeLimit:20000/8000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):16647AcceptedSubmission(s):7037ProblemDescriptionAttheentrancetotheuniversity,thereisahugerectangula
d_x_d
·
2015-12-12 21:00
线段树
HDU2795
billboard【转化为线段树。】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2795 hhanger大神的题目,水题都得有点思维。 题意:h*w的木板,放进一些1*L的物品,求每次放空间能容纳且最上边的位子 思路:每次找到最大值的位子,然后减去L 线段树功能:query:区间求最大值的位子(直接把update的操作在query里做了) &nb
·
2015-11-13 12:05
HDU
HDU2795
Billboard 【线段树】+【单点更新】
Billboard Time Limit: 20000/8000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 9632 Accepted Submission(s): 4286
·
2015-11-13 09:24
HDU
HDU2795
billboard【转化为线段树。】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2795 hhanger大神的题目,水题都得有点思维。 题意:h*w的木板,放进一些1*L的物品,求每次放空间能容纳且最上边的位子 思路:每次找到最大值的位子,然后减去L 线段树功能:query:区间求最大值的位子(直接把update的操作在query里做了) &nb
·
2015-11-13 00:20
HDU
hdu2795
Billboard
hdu2795
Billboard 题意:h*w的木板,放进一些1*L的物品,求每次放空间能容纳且最上边的位子思路:我们从左向右看,剩余的空间当做一个权值,则有h个权值。
·
2015-11-12 18:37
HDU
hdu2795
线段树
//=========================================== //segment tree //final version //by kevin_samuel(fenice) //以h离散化构建线段树 #include <iostream> #include <cstdio> #include <cmath>
·
2015-11-12 13:44
HDU
HDU2795
–Billboard(单点修改&&区间最值)
题目大意 给定一个大小为h*w的矩形和n个子矩阵,大小分别为1*w1,1*w2,1*w3,..1*wn。要求你把n个子矩阵按给出顺序依次放置在大矩阵中(如果能够放入的话),使得放置的位置尽量靠顶端,如果有几种情况符合条件的话,选择最靠左的位置放置,要求你输出每个子矩阵放置的位置的行数,如果不能能放置则输出-1 题解 线段树的单点修改和区间最值问题,把每一行作为线段树的一个叶子结点,每个叶子结点
·
2015-11-11 17:04
HDU
【
HDU2795
】Billboard(线段树)
大意:给一个h*w的格子,然后给出多个1*w的板子往格子里面填,如果有空间尽量往上一行填满,输出行数,无法填补,则输出-1; 可以使用线段树转化问题,将每一排的格子数目放到每一个叶子节点上,然后每有一块板子,进行query查询靠左子树的第一个大于板子的叶子,进行update操作更新叶子。每个节点附权值max叶子节点即可。令一个小坑是h和w的范围是1e9,数组太大。试想如果格子高度h > 板
·
2015-11-11 12:04
HDU
hdu2795
线段树 求区间特殊值
又一个线段树,和前几个有点不太一样,这里的域值保存的是一个区间,或者说是一个长度,即能用的剩余空间。求的也不一样,求的是一个最靠近区间最端点符合条件的值。 struct node{ int l, r, sl, maxSize;}st[NN * 8 ]; sl保存的是那一排的首位置,maxSize表示当前区间的
·
2015-11-03 22:26
HDU
hdu2795
(线段树)
http://acm.hdu.edu.cn/showproblem.php?pid=2795 题意:有一块尺寸为h*w的矩形长板,要在上面贴1*wi的海报n张,选择贴海报的位置是:尽量高,同一高度,选择尽量靠左的地方。要求输出每张海报的高度位置。 思路:用线段树来做。在结构体中有一个num变量,装每段区间剩余的最大长度,然后与输入进来的长度len比较,根据题意应该先是左边比较,再是右边比较。还
·
2015-10-31 09:45
HDU
hdu2795
Billboard 线段树
题意: 给出一块h*w的广告牌,还有n张1*u的海报,海报尽量往上,左边的位置张贴,问每一张海报能贴的多高。 线段树单点修改。 注意:因为1 <= h,w <= 10^9; 1 <= n <= 200,000,但实际上,若h>n的话,最坏的情况下也只要用到前n行。 所以若h>n 则h=n 如果不加这一句,因为线段树的数组要开到h<&l
·
2015-10-30 11:39
HDU
单点更新区间求和贴海报问题
hdu2795
billbord
hdu2795billbord题目大意:有一块板子,长宽分别为W,H,然后有n块1*w海报,让你把这n快海报贴在这块板子上,尽量板子的上方贴,同一行尽量往板子的左边贴。对于第i块海报如果能够贴下则输出能贴在第几行,否则输出-1。解题思路:设线段树的操作长度为H,则对应的叶子节点的最大值为W。设每次找到符合要求的位置(板子最上最左,对应线段树中最下最左)减去相应的w值。#include#includ
詹明捷
·
2015-10-11 15:38
线段树
[HDU 2795]Billboard[线段树]
题目链接:[
HDU2795
]Billboard[线段树]题意分析:有一个高度为h,宽度为w的广告板,给出n个海报,每个海报高度1,宽度x。问能否贴到广告板上,能输出贴到的行,否则输出-1。
CatGlory
·
2015-10-01 00:00
线段树
HDU2795
贴广告
HDU2795Billboard题意:有一块h*w的广告牌,往上面贴n个1*wi的广告(不可覆盖),尽量贴最上面,满足最上面时尽量贴最左边,如果哪个广告贴不下不能就输出-1,贴的下就输出它在哪一行思路:如果以行数为区间,建立线段树,广告最多有n=200000条,即使每个广告一行也就需要h=200000行就足够了;树的叶子节点表示广告牌的高度,而父节点存储子节点的最大剩余值;所以每次找到最大值的位置
daniel_csdn
·
2015-09-17 15:00
HDU2795
Billboard 线段树
开始的代码,暴力求解。。。。。果断超时#include#include#includeusingnamespacestd;constintmaxn=200005;intmain(){ int h,w,k,b; int a[maxn]; boolflag; while(scanf("%d%d%d",&h,&w,&k)!=EOF){ memset(a,0,sizeof(a)
efine_dxq
·
2015-08-26 15:00
C++
线段树
ACM
HDU
暴力求解
HDU 2759 Billboard 线段树
Billboard TimeLimit:8000MS MemoryLimit:32768KB 64bitIOFormat:%I64d&%I64u Submit Status Practice
HDU2795
longshanxiaoxuesheng
·
2015-08-09 10:00
线段树 Ⅱ
单点修改(内容有升级)[
hdu2795
](http://acm.hdu.edu.cn/showproblem.php?
PNAN222
·
2015-08-08 18:00
二叉树
hdu2795
http://acm.hdu.edu.cn/showproblem.php?pid=2795BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):15079 AcceptedSubmission(s):6421ProblemDescript
yuanjunlai141
·
2015-08-08 16:00
hdu2795
链接:点击打开链接题意:给一个h*w的木板,往上贴n张海报,海报的尺寸都是1*wi,贴的原则是近可能往最上一行贴,同行尽可能往最左面贴,问每一张海报都能贴到哪一行,如果贴不下了就输出‘-1’代码1:#include #include #include #include usingnamespacestd; intnode[1000005],w; intupdate(intpos,int
stay_accept
·
2015-08-08 16:00
hdu 2795 Billboard
hdu2795
的传送门–>ProblemDescriptionAttheentrancetotheuniversity,thereisahugerectangularbillboardofsizeh*w
qingshui23
·
2015-08-08 11:00
线段树
HDU-Billboard-2795(线段树)
hdu2795
Billboard Time Limit: 20000/8000 MS (Java/Others) Memory Limit: 32768
·
2015-07-24 14:00
HDU
HDU2795
Billboard 线段树单点更新变形
题目链接:点击打开链接题目大意:有一个h×w的广告牌和n条1×wi的通知,每条通知总是尽可能的往上,在每一层中尽可能往左贴在广告牌上,找出每条通知在广告牌上我位置高度,如果不能贴在广告牌上,位置高度为-1.分析:要想把通知插到广告牌上,我们需要知道当前位置高度的剩余容量,可以用一个数组num[i]来纪录第i层上剩余的最大长度,然后与输入进来的通知的长度x比较。若通知长度大于当前剩余长度,那么就找下
AC_Gibson
·
2015-05-14 13:00
hdu2795
Billboard 线段树模拟
BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):13179 AcceptedSubmission(s):5695ProblemDescriptionAttheentrancetotheuniversity,thereisahugere
wr132
·
2015-05-04 14:00
HDU
billboard
2795
线段树模拟
【线段树求最靠前】【
HDU2795
】【Billboard】
题意:有一个H*W的广告牌,当插入一个广告时(1*Wi),问最靠前的插入方式是什么新生赛有个类似的题目,可惜当时居然没水过去。果断用线段树做以H为线段建树,存[l,r]中最大的宽度,因为区间最大值满足区间和性质。所以线段树几个要素如下:线段:H区间和性质:最大值代码:#include #include #include #include #include #include #include #in
zy691357966
·
2015-04-08 11:00
hdu2795
Billboard(线段树单点更新)
题意:有一块h*w的墙,有N个宣传单每个的大小为1*wi每次贴都从最左最上能贴的位置开始。求每一宣传单被贴在哪一行。思路:线段树,以1~h划分区间,每一个区间中保存该区间能放下的最大长度,每次从最上面开始找,找到符合的位置贴上,该位置减去len,更新区间的最大长度值。询问和更新一起操作//3152KB1903ms #include #include #include #include #defin
kalilili
·
2015-02-17 21:00
hdu2795
——Billboard
BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):11900 AcceptedSubmission(s):5240ProblemDescriptionAttheentrancetotheuniversity,thereisahugere
Guard_Mine
·
2014-11-30 14:00
线段树
hdu2795
Billboard
题意:一个公告板,高h,宽w。往上面贴n张公告,每张公告高为1,宽为wi,每次总是贴在尽可能靠上的位置中尽可能靠左的位置,不能覆盖之前的公告。输出每次公告贴在“第几行”,如果贴不下输出-1。 思路:线段树(单点更新)。节点数是min(h,n),内容是区间中剩余宽度的最大值,因为至多只有n张,那么如果“第n行”都贴不下的话,下面也贴不下。其实这题的更新和查询是一体的,直接写为一个函数了
squee_spoon
·
2014-09-23 23:00
线段树
【线段树】
hdu2795
BillboardProblemDescriptionAttheentrancetotheuniversity,thereisahugerectangularbillboardofsizeh*w(hisitsheightandwisitswidth).Theboardistheplacewhereallpossibleannouncementsareposted:nearestprogrammin
hetangl2
·
2014-07-18 14:00
线段树
HDU
HDU2795
Billboard 【线段树】+【单点更新】
BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):9632 AcceptedSubmission(s):4286ProblemDescriptionAttheentrancetotheuniversity,thereisahugerec
u012846486
·
2014-07-07 18:00
HDU2795
hdu2795
Billboard
BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):8255 AcceptedSubmission(s):3670ProblemDescriptionAttheentrancetotheuniversity,thereisahugerec
magicnumber
·
2013-11-27 22:00
HDU2795
:Billboard(线段树单点更新)
ProblemDescriptionAttheentrancetotheuniversity,thereisahugerectangularbillboardofsizeh*w(hisitsheightandwisitswidth).Theboardistheplacewhereallpossibleannouncementsareposted:nearestprogrammingcompetit
libin56842
·
2013-10-23 20:00
线段树
HDU
HDU2795
Billboard
线段树水题,需要稍微思考一下。手写线段树感觉好爽!!!线段树好神!!!#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include usingnamespacestd; ty
huangshenno1
·
2013-09-25 22:00
hdu2795
线段树
//=========================================== //segmenttree //finalversion //bykevin_samuel(fenice) //以h离散化构建线段树 #include #include #include usingnamespacestd; #defineMAXN201050 #defineINF0x3fffff
Kevin_Samuel
·
2013-08-09 21:00
hdu2795
解题报告 Billboard
BillboardTimeLimit:20000/8000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):6782 AcceptedSubmission(s):3069ProblemDescriptionAttheentrancetotheuniversity,thereisahugerec
u010422038
·
2013-06-10 16:00
解题报告
HDU2795
Billboa
hdu2795
线段树单点更新
#include #definelsonl,m,rtb?a:b; } voidPushUp(intrt) { MAX[rt]=cmp(MAX[rt>1; build(lson); build(rson); } intquery(intx,intl,intr,intrt) { if(l==r) { MAX[rt]-=x; returnl; } intm=(l+r)>>1; intret=MAX[rt
wahaha1_
·
2013-03-18 11:00
HDU2795
(Billboard)线段树
/************************************************* 题目大意: 有一块h*w的矩形广告板,要往上面贴广告; 然后给n个1*wi的广告,要求把广告贴上去; 而且要求广告要尽量往上贴并且尽量靠左; 求第n个广告的所在的位置,不能贴则为-1; 算法思想: 利用线段树可以求区间的最大值; 将位置即h用来建树(h #include #include usi
Jarily
·
2013-03-02 21:00
Algorithm
ACM
hdu 2795 Billboard
点击打开
hdu2795
思路:线段树+单点更新分析:1题目的意思是给定一个h*w的广告牌h为高,w为宽,现在有n个高为1宽为wi的小广告要放上去,原则是最先放最上面和最左边的位置2题目的h和w的最大值为10
cgl1079743846
·
2012-12-26 12:00
hdu2795
/*分析: 好久没有敲过线段树了,虽然是水题,不过一a还是挺happy的~。 2012-09-21*/#include"stdio.h" #include"string.h" intw; structseg { intl,r,mid; intmax; }T[666666]; intMAX(inta,intb) { returna>b?a:b; } vo
Ice_Crazy
·
2012-09-21 12:00
Build
hdu2795
Billboard
主要是利用线段树能求区间最大值的性质完成这样一个功能“查询最靠前能容纳广告的位置“ 将位置用来建树(实际上h #definemaxn200005 #definelsonl,m,rt>1; build(lson); build(rson); } intPushup(intrt) { MAX[rt]=MAX[rtMAX[rt>1; if(l==r){MAX[rt]-=x;returnl;} elser
zy691357966
·
2012-07-15 10:00
query
Build
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他