随笔分类 -  DP--树形

摘要:1 //树形DP+树状数组 HDU 5877 Weak Pair 2 // 思路:用树状数组每次加k/a[i],每个节点ans+=Sum(a[i]) 表示每次加大于等于a[i]的值 3 // 这道题要离散化 4 5 #include 6 using namespace std; 7 #define LL long long 8 typedef pair pii; 9 co... 阅读全文
posted @ 2016-09-11 12:15 yyblues 阅读(244) 评论(0) 推荐(0) 编辑
摘要:1 // 树形DP CCPC网络赛 HDU5834 Magic boy Bi Luo with his excited tree 2 // 题意:n个点的树,每个节点有权值为正,只能用一次,每条边有负权,可以走多次,问从每个点出发的最大获益 3 // 思路: 4 // dp[i]: 从i点出发回到i点的最大值 5 // d[i][0] 从i点出发不回来的最大值 6 // d[i][... 阅读全文
posted @ 2016-08-17 21:37 yyblues 阅读(203) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/search.php?field=problem&key=2016+Multi-University+Training+Contest+1&source=1&searchmode=source 1001 Abandoned country 题意:n个数 m 阅读全文
posted @ 2016-07-20 16:38 yyblues 阅读(550) 评论(0) 推荐(0) 编辑
摘要:A - Pineapple Incident 1 #pragma comment(linker, "/STACK:102c000000,102c000000") 2 #include <iostream> 3 #include <cstdio> 4 #include <cstring> 5 #inc 阅读全文
posted @ 2016-07-16 10:41 yyblues 阅读(352) 评论(0) 推荐(0) 编辑
摘要:Tree2cycle dfs 不是根节点:如果边数大于等于2,则删除与父节点的边。并且是一条环,那么每个点的度数是2,则还要删除num(每个节点儿子数)-2,只留两个儿子。当然删除边的儿子也要连到环上,又是一个num(每个节点儿子数)-2次操作。最后不同分支之间还要连一条边。所以复杂度为:2*(nu 阅读全文
posted @ 2016-04-24 00:10 yyblues 阅读(388) 评论(0) 推荐(0) 编辑
摘要:求树的重心,直接当模板吧。先看POJ题目就知道重心什么意思了。。。 重心:删除该节点后最大连通块的节点数目最小 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<queue> 5 #include<stack 阅读全文
posted @ 2016-04-14 22:40 yyblues 阅读(315) 评论(0) 推荐(0) 编辑
摘要:思路:这题就是学习一下算法优化,选择最优方案,O(nm) 可以学习一下《浅谈数据的合理组织》这篇论文 详见代码 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<queue> 5 #include<stack 阅读全文
posted @ 2016-04-14 16:20 yyblues 阅读(250) 评论(0) 推荐(0) 编辑
摘要:简单树形DP 1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include<cstdlib> 5 using namespace std; 6 int n,w[6001],ne=0; 7 bool in[6001]; 8 阅读全文
posted @ 2016-04-13 23:09 yyblues 阅读(237) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示