HDU 4714 Tree2cycle(树形dp)
来源:互联网 发布:免费下载淘宝网到桌面 编辑:程序博客网 时间:2024/06/10 17:10
题目链接;
HDU 4714 Tree2cycle
题意:
给一个
数据范围:
分析:
我们来考虑保留边的最大数量,记为
显然
我们可以考虑每个点的度。保留的边必须使得每个点的度小于等于2。于是我们可以定义
对于
时间复杂度:
#include <stdio.h>#include <string.h>#include <algorithm>#include <math.h>using namespace std;typedef long long ll;const int MAX_N = 1000010;int T, n, total;int head[MAX_N], dp[MAX_N][5];struct Edge { int v, next;}edge[MAX_N * 2];void AddEdge (int u, int v){ edge[total].v = v; edge[total].next = head[u]; head[u] = total++;}void dfs(int u, int p){ int flag1 = 0, flag2 = 0; for (int i = head[u]; i != -1; i = edge[i].next) { int v = edge[i].v; if (v == p) continue; dfs(v, u); dp[u][0] += max(dp[v][0], max(dp[v][1], dp[v][2])); dp[u][1] += max(dp[v][0], max(dp[v][1], dp[v][2])); dp[u][2] += max(dp[v][0], max(dp[v][1], dp[v][2])); if(max(dp[v][1], dp[v][0]) >= dp[v][2]) { flag1++; flag2++; } } if (flag1) dp[u][1]++, dp[u][2]++; if (flag2 >= 2) dp[u][2]++;}int main(){ scanf("%d", &T); while (T--) { scanf("%d", &n); memset(head, -1, sizeof(head)); total = 0; for (int i = 1; i < n; ++i) { int u, v; scanf("%d%d", &u, &v); AddEdge(u, v); AddEdge(v, u); } memset(dp, 0, sizeof(dp)); dfs (1, -1); int left = max(dp[1][0], max(dp[1][1], dp[1][2])); printf("%d\n", n * 2 - 2 * left - 1); } return 0;}
0 0
- 树形dp-hdu-4714-Tree2cycle
- hdu 4714 Tree2cycle (树形dp)
- HDU 4714 Tree2cycle(树形dp)
- HDU 4714 Tree2cycle (构造,树形DP)
- hdu 4714 Tree2cycle dp
- HDU 4714 Tree2cycle(树型DP)
- HDOJ 题目4714 Tree2cycle(树形DP)
- hdu4714 Tree2cycle 树形DP
- 树形 DP hdu4714 Tree2cycle
- HDU-4714 Tree2cycle(树型dp)
- hdu4714 Tree2cycle(树形dp)
- HDU 4714 Tree2cycle
- hdu 4714 Tree2cycle
- HDU 4714 Tree2cycle
- hdu 4714 Tree2cycle
- hdu 4714 Tree2cycle
- Hdu 4714 Tree2cycle - DFS
- HDU 4714 Tree2cycle
- 数据结构实验之图论七:驴友计划(最短路径之Dijkstra算法+Bellman-Ford算法)
- json格式转换工具包
- asp.net 常用传值方式及其优缺点分析
- Jzoj 2555. 【NOIP2011模拟9.7】雾雨魔理沙
- 程序员必读书籍
- HDU 4714 Tree2cycle(树形dp)
- 对Java的简单了解
- UVA-202
- NYoj-311 (完全背包模板)
- 数字图像和数字图像处理
- 2016中国大学生程序设计竞赛 - 网络选拔赛 1011
- Jam's math problem
- leetcode Number of Islands
- 2569. 【NOIP2011模拟9.17】旅行 (Standard IO)