摘要: 通道题意:给n个点,现在要使这n个点连通,并且要求代价最小。现在有2个点之间不能直接连通(除了第一个点),求最小代价思路:先求mst,然后枚举边,对于生成树上的边替换,用树形dp O(N^2)求出每条生成树边的最小替代边。然后替换后的最大值代码:#include #include #include ... 阅读全文
posted @ 2015-08-10 23:34 mithrilhan 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 通道题意:给定n个点的树,问树的直径有多少条代码:#include#includeconst int N=500000;const int inf=0x3fffffff;int head[N],num,Len[N],ans,node[N],k;struct edge{ int ed,w,nex... 阅读全文
posted @ 2015-08-10 21:21 mithrilhan 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 通道题意:给一个树,边有颜色,点有权值。满足路径上没有两个相邻边同色的路径是好的路径,求好的路径的(路径上的点的权值和)的总和思路:边权排序,从任意一点开始深搜,每颗子树搜索完毕之后向上返回pair每次深搜完一个子节点之后,增加的过这一点的gorgeous边的总分数为: 之前深搜的所有子节点向上返回... 阅读全文
posted @ 2015-08-10 16:13 mithrilhan 阅读(197) 评论(0) 推荐(0) 编辑