题意:给定一个树形图,节点数量3000。叶子节点是用户,每个用户如果能看上电视会交一定的电视费。看上电视的条件是从根到该用户的路径全部被修好,修每条边有一个费用。在不亏损(用户交钱总额>=修路总费用)的前提下,最多有多少人能看上电视。分析:树形dp。dp[u][i][j]表示对于u节点,只看其前i个...
分类:
其他好文 时间:
2015-04-05 21:36:57
阅读次数:
156
1.扫描程序(scanner) 把源代码中的语句扫描进来,并分解成token。即词法分析。2.语法分析程序(parser) 进行语法分析,并将分析结果用分析树(parse tree)或者语法树(syntax tree)表示出来。3.语义分析程序(semantic analyzer) 在语法树下...
分类:
其他好文 时间:
2015-03-11 12:31:43
阅读次数:
175
题目链接:BZOJ - 1901题目分析树状数组套线段树或线段树套线段树都可以解决这道题。第一层是区间,第二层是权值。代码树状数组套线段树#include #include #include #include #include #include using namespace std;const i...
分类:
编程语言 时间:
2015-03-06 10:01:58
阅读次数:
127
描述
http://www.lydsy.com/JudgeOnline/problem.php?id=2243 分析
树链剖分练习题
比较难的地方在于两端相邻区间交界处的颜色有可能相同. 那么此时查询结果不能直接简单相加.
用线段树维护三个值 : 区间颜色总数 区间最左端的颜色 区间最右端的颜色, 这样就能把区间分界线的情况表示出来了.
还有许...
分类:
其他好文 时间:
2015-02-24 17:31:04
阅读次数:
137
问题分析:树中的路径,即是从树上的某个节点起,经过某个转折节点,到达另一个节点这样一条路径。而最长路径就是要找出这些路径中最长的那一条。算法思路:对于每个节点,记录下以该节点为根节点的子树中从该节点开始到所有叶子节点的路径中最长的那一条路径长度d1以及次长的那一条路径长度d2(最长和次长两条路径无公...
分类:
其他好文 时间:
2015-02-20 14:06:27
阅读次数:
161
//http://acm.timus.ru/problem.aspx?space=1&num=1003//分析:树和递归最常用的思想是分治;并查集是一种合并树的数据结构;合并树或加入树节点时,我们只在意新建立的树边上相邻的两个树节点之间的关系,实际上树边只在意相邻两个树节点之间的关系//思路:可以讲...
分类:
其他好文 时间:
2015-01-31 21:47:14
阅读次数:
195
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3966题意:一颗树上,每个点有权值,定义三种操作:1)I操作表示从a到b节点之间的节点都加上一个值2)D操作表示从a到b节点之间的节点的都减去一个权值3)Q操作询问a节点当前的值。分析:树链剖分裸题,在树...
分类:
其他好文 时间:
2015-01-23 00:39:49
阅读次数:
264
题目链接:http://poj.org/problem?id=2763题意:定一棵带边权的树,要求支持两种操作:1)询问树中某两点间的距离。2)修改某条边的权值。分析:树链剖分,边权修改,路径求和,将树上信息映射到线段树上则是单点修改,区间求和。。。#include #include #includ...
分类:
其他好文 时间:
2015-01-23 00:38:31
阅读次数:
302
题目链接:http://poj.org/problem?id=3237题目大意:指定一颗树上有3个操作:1)询问操作,询问a点和b点之间的路径上最长的那条边的长度(即最大值);2)取反操作,将a点和b点之间的路径权值都取相反数;3)变化操作,把某条边的权值变成指定的值。分析:树链剖分,线段树维护好区...
分类:
其他好文 时间:
2015-01-22 23:03:09
阅读次数:
199
题目链接:BZOJ - 2243题目分析树链剖分...写了200+行...Debug了整整一天+...静态读代码读了 5 遍 ,没发现错误,自己做小数据也过了。提交之后全 WA 。————————————— 杯具的分割线 —————————————————然后看了别人代码。。然后发现。。我写线段树区...
分类:
其他好文 时间:
2015-01-15 10:42:47
阅读次数:
184