题目大意:给定一棵树,每个节点有权值,询问两个节点路径上的权值第k小
这题很卡时间。。。
树链剖分+二分+树套树的O(nlog^4n)做法可以去死了
没有修改操作,树链剖分+二分+划分树O(nlog^3n),还是死了
我怒了,裸学了一发可持久化线段树(不看任何代码OTZ,我是怎么做到的0.0),二分+主席树,O(nlog^2n),居然还是死了!
最后发现我SB了,完全没有必要二分,直...
分类:
其他好文 时间:
2014-10-13 20:02:37
阅读次数:
373
一棵树 开始每个点的权值都为1
2种操作1.将第i个点的权值增加x 2.求u到v这条路上最大的权值
树链剖分基础题
#include
#include
#include
using namespace std;
const int maxn = 100010;
struct edge
{
int v, next;
}e[maxn*2];
int first[maxn], cnt;...
分类:
其他好文 时间:
2014-10-13 17:54:29
阅读次数:
232
【前言】TTvTT先让我呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜一下。。。。。。经历了5发WA,6发RE,3发TLE后,今天终于和这道题做了个了断了。题意:一棵树,给出边权值,有两种操作:更改一条边的值;查找a到b路径上的最大边权值。【唧唧喳喳】这道题算是树链剖分对边剖分的一道很好的训练题吧,但是数据好像比较...
分类:
其他好文 时间:
2014-10-13 10:47:59
阅读次数:
253
大致题意:add1 u v u到v路径上所有点的权值加上k,add2 u 到v路径上所有边的权值加上k最后输出所有点的权值,边的权值。。树链剖分预处理然后来个线性O(n)的操作。刚开始用线段树tle了. 1 #pragma comment(linker, "/STACK:1024000000,1.....
分类:
其他好文 时间:
2014-10-10 22:00:24
阅读次数:
295
题意:三种操作 ①修改第i条边的权值为val,②把u到v路径上的所有边的权值 去相反数③求u 到v路径上最大的边权线段树的区间更新还是不熟练,,一直搞不对调试了好久还是没对,最后还是看的kuangbin的代码。 1 #include 2 #include 3 #include 4 #i...
分类:
其他好文 时间:
2014-10-09 23:23:18
阅读次数:
297
不能原谅自己的错误。。还怀#pragma comment(linker, "/STACK:1024000000,1024000000")
#include
#include
#include
#define lson id << 1
#define rson id << 1|1
#include
using namespace std;
const int M = 100008;
int fath...
分类:
其他好文 时间:
2014-10-09 20:11:27
阅读次数:
127
很无奈,模板又一次无奈的打错了。。不过,很快便找到了。。
题意:给一些边,有一些操作,每次操作,都要在这些边上加上1,求每个边的边权。。
#include
#include
#include
#include
using namespace std;
#define lson id << 1
#define rson id << 1|1
const int M = 100008;
int to...
分类:
其他好文 时间:
2014-10-09 15:44:14
阅读次数:
276
题目大意:有n个路由器,他们由n-1条边连接(形成一棵树)。每一个路由器有一个延时值。有两种操作:
1.查询树上x,y两点之间的路径上第k大的权值是多少
2.修改x位置的权值为y
思路:当我大概想到怎么做这个题的时候,所想的时间复杂度已经达到了O(nlog^4n),偷偷的瞄了一眼数据范围...(N,Q
“没事,写吧,我10多秒就过了。。。”
秒就过了。。。就过了。。。过了。。。了...
分类:
Web程序 时间:
2014-10-09 15:39:18
阅读次数:
281
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5044题目大意:修改链上点,修改链上的边。查询所有点,查询所有边。解题思路:2014上海网赛的变态树链剖分模板题。将以往树链剖分的点&边修改和查询合在一起之后,难度上去不少。第一个卡人点是读入优化。第二...
分类:
其他好文 时间:
2014-10-09 01:55:17
阅读次数:
329
真心不好意思说话,写的越多,各种问题就暴漏出来了,这次更离谱,什么错误都有。。。不过还是过了。也明白了代码以后要写规范性,不能想当然。。。
#include
#include
#pragma comment(linker, "/STACK:1024000000,1024000000")
#include
#include
using namespace std;
const int M = 50...
分类:
其他好文 时间:
2014-10-08 12:47:15
阅读次数:
199