HDU 1520 Anniversary party——树形dp
来源:互联网 发布:大连品牌网络推广公司 编辑:程序博客网 时间:2024/06/06 12:24
入门题
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <vector>#define IN freopen("in.txt". "r", stdin)#define OUT freopen("out.txt", "w", stdout);using namespace std;const int maxn = 1e4;const int INF = 0x3f3f3f3f;int n, dp[maxn][2], par[maxn];vector<int> g[maxn];void dfs(int root) { for (unsigned int i = 0; i < g[root].size(); i++) { dfs(g[root][i]); } for (unsigned int i = 0; i < g[root].size(); i++) { dp[root][0] += max(dp[g[root][i]][0], dp[g[root][i]][1]); dp[root][1] += dp[g[root][i]][0]; }}int main() { while (~scanf("%d", &n)) { memset(dp, 0, sizeof(dp)); memset(par, -1, sizeof(par)); for (int i = 1; i <= n; i++) { scanf("%d", &dp[i][1]); g[i].clear(); } int u, v; while (~scanf("%d %d", &u, &v) && u && v) { par[u] = v; g[v].push_back(u); } int root = 1; while (par[root] != -1) root = par[root]; dfs(root); printf("%d\n", max(dp[root][1], dp[root][0])); } return 0;}
阅读全文
0 0
- HDU 1520 Anniversary party——树形dp
- 树形DP---hdu 1520 Anniversary Party
- HDU 1520 Anniversary party(树形DP入门)
- HDU 1520 Anniversary party-----树形DP
- hdu(1520) Anniversary party(树形dp)
- 【树形DP】 HDU 1520 Anniversary party
- HDU 1520 Anniversary party(简单树形dp)
- HDU 1520 Anniversary party 树形DP
- HDU 1520 Anniversary party (树形DP)
- hdu 1520 Anniversary party(树形dp)
- HDU 1520 Anniversary party(树形DP)
- hdu 1520 Anniversary party(基本树形DP)
- HDU 1520 Anniversary party (树形dp)
- HDU 1520 Anniversary party / 树形DP水题!!!
- hdu 1520 Anniversary party(树形dp)
- hdu 1520Anniversary party(简单树形dp)
- 【树形DP】hdu 1520 Anniversary party
- HDU 1520 - Anniversary party (树形DP)
- C与C++的区别(一)
- JavaWeb学习心得之JDBC处理Oracle大数据
- 数据结构与算法-堆与堆排序
- Logistic Regression逻辑回归模型
- Python异常编码处理
- HDU 1520 Anniversary party——树形dp
- Java程序性能优化 读书笔记(七)设计模式:ValueObject模式
- git如何拉取远程分支
- Java中Servlet的使用(一)——Hello Servlet
- springstrutsmybatis-annotation
- 分页查询简约代码显示
- 动态规划初步
- spring整合数据库连接池
- 读书笔记:《人工智能》