![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
obsolescence
这个作者很懒,什么都没留下…
展开
-
HDU1754 I Hate It (分块入门)
HDU 1754 题目链接这题就是一个裸的求区间最大值,用线段树写的话直接套模板就行了,不过最近在学分块,听说分块很牛逼。。碰上啥都能搞一搞。。这道题就是把n个数分成√n个块,维护√n个最大值,询问时把没有整块包含在l和r之间的块直接扫一遍,包含的用维护的最大值;更新时直接把x所在的块扫一遍即可。/**********************************原创 2016-08-22 21:39:53 · 381 阅读 · 0 评论 -
POJ 3321 Apple Tree(dfs序+线段树)
POJ 3321 Apple Tree (题目链接)题意:给出一个苹果树,每个节点一开始都有苹果C X,如果X点有苹果,则拿掉,如果没有,则新长出一个Q X,查询以X点为根的子树一共有几个苹果思路:利用dfs将树上的节点hash成线性,并将子树hash成区间。然后就转换成裸线段树了。/*************************原创 2016-07-28 19:08:35 · 297 阅读 · 0 评论 -
2016Dalian网络预选赛1010 / HDU 5877 (dfs序+划分树)
题意:给定一棵有根树,n个节点,每个节点有权值v[i],给定一个k值,若当前点与其祖先节点的权值之积小于等于k,则构成一对weak pair。求树上的所有weak pair对数。思路:要求所有的weak pair,我们就要对每个节点u扫一次它的子树里有多少个节点能与它构成weak pair,即找子树里有多少个节点小于等于k/v[u],但直接扫肯定不行。我们考虑用dfs序把树形转化成线形,然原创 2016-09-11 10:57:41 · 267 阅读 · 0 评论 -
ACdream 1424 Diversion(树链剖分+线段树)
传送门:ACdream 1424 Diversion题意:给一个边双联通图,n个点m条边,其中n-1条边构成树,点1为树根(值为1,以下称为黑边),其他m-n+1条边为普通边(值为0,以下称为白边)。。要求最多去掉一条黑边和一条白边使图不联通,求方案数。思路:在树上把连接白边的两个节点进行路径染色,重复染色的边说明该边不止与一条白边相连,去掉该边和与之相连的其中一条白边图也依旧原创 2016-10-20 19:53:30 · 274 阅读 · 0 评论 -
FZU 2082 过路费(树链剖分+线段树)
传送门:FZU 2082 过路费题意:中文题自己看。。思路:树剖(把边权记录在dep深的点上,把dep深的点按出现顺序存在a数组中,更新第x条路,即更新a[x])+线段树。双手奉上代码原创 2016-10-21 14:44:15 · 345 阅读 · 0 评论 -
Intel Code Challenge Elimination Round C Destroying Array(线段树)
传送门:C Destroying Array题意:给定n个数的序列,n次操作,每次从中删除一个数,问删后的最大连续字段和。(删除的数也占位置,位置相邻的才是连续)思路:用线段树维护一下区间最大连续和即可。。贴代码原创 2016-10-04 09:59:59 · 289 阅读 · 0 评论 -
Intel Code Challenge Elimination Round D Generating Sets(贪心+线段树)
传送门:D Generating Sets题意:定义每个数x都可以由x/2得到,给定一个数列ai,要求输出能得到ai的bi,并使bi的最大值最小。思路:每次用最大值除2,直到不能除为止。。可以用线段树维护最大值。。贴代码原创 2016-10-04 10:41:35 · 260 阅读 · 0 评论 -
Intel Code Challenge Final Round D Dense Subsequence(线段树)
传送门:Dense Subsequence题意:给定一个数k和一个字符串s,从s中选取一些字符形成新串,要求每k个连续字符至少要选1个,输出字典序最小的新串,aabb>aaabb,aabb>aab。思路:遍历一遍,如果当前k个中没有选过,就把当前k个中的最小的选上。。(用线段树维护一下最小值)。。因为aabb>aaabb。。预处理字符串s中每个字母的出现次数。。把选上的字母进行排序原创 2016-10-09 01:14:24 · 365 阅读 · 0 评论 -
POJ2104 K-th Number (划分树模板)
POJ2104 K-th Number (题目链接)求区间第k大/************************************************************************* File Name: A.cpp ID: obsoles1 PROG: LANG: C++ Mail: 38原创 2016-08-25 22:16:08 · 241 阅读 · 0 评论 -
SPOJ KGSS Maximum Sum (线段树)
SPOJ KGSS Maximum Sum题意:求区间最大值与第二大值之和思路:线段树维护两个最大值/************************************************************************* File Name: B.cpp ID: obsoles1 PROG: LANG:原创 2016-07-13 19:51:01 · 380 阅读 · 0 评论 -
HYSBZ 2243 染色(树链剖分+线段树区间合并)
题意:中文题自己看吧。。思路:树剖+线段树区间合并。。不能用cin!!!我因为这个re五发!!!找到错感觉莫名其妙!!!求好心人告诉我为什么。。新技能get:树剖爬边时的合并。。愤怒的贴代码原创 2016-10-20 23:06:20 · 244 阅读 · 0 评论