
线段树
文章平均质量分 78
brainache
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
hdu2759 Billbord(线段树)
题意:给一个长w宽h的板子,每次往上面贴一个长wi宽1的条子(不可旋转),共n个,每次贴的时候都贴在能贴的最上行的最左端,若贴不下就不贴 给出w,h,wi,n求每个帖子在第几行,若贴不下,输出-1 思路:使用最大值线段树记录每行剩余长度,树叶表示那一行的剩余长度。在每次贴的时候,若wi>根值,则树上所有叶子都比这个帖子小,故挂不下,输出-1。 若h原创 2017-11-13 21:29:57 · 311 阅读 · 0 评论 -
hdu1698 Just a Hook (线段树)
题意:给一个大小为n的数组,初始状态全为1 ,进行q次段赋值,问最后的全段和是多少 思路:线段树段修改模板题(用来写模板的题)特别的是,由于只有最后一步查询全段和以及初始状态全为1,代码可以偷工减料 #include #include using namespace std; const int maxn=500100; //用于存放线段树的结构 l,r表示此区间原创 2017-11-14 20:35:31 · 235 阅读 · 0 评论 -
poj3468 A Simple Problem with Integers (线段树段修改)
题意:线段树段修改的板子题 思路:套板子,注意mark _down和值都要用longlong #include #include typedef long long ll; using namespace std; const int maxn=100000*5+100; struct segn {原创 2017-11-16 14:34:47 · 171 阅读 · 0 评论 -
hdu1394 Minimum Inversion Number (线段树
题意:0到n-1这n个数组成一串数,每次进行一个这样的操作:把这组数的第一个数放到最后面,不断这么操作,直到最后一个数变成第一个。求:每次操作得到的序列的逆序数的最小值 注:逆序数:一个序列,对每个数,他比他前面多少个数小的值的和 思路:一旦求得最开始的序列的逆序数,那么,他的下一个数的逆序数=他的逆序数+n-2*这个数的值-1 (胡乱分析->得出结论) 第一个数的逆原创 2017-11-11 10:44:37 · 173 阅读 · 0 评论