树形DP URAL 1039 Anniversary Party
2024-09-01 15:50:47
/*
题意:上司在,员工不在,反之不一定。每一个人有一个权值,问权值和最大多少。
树形DP:把上司和员工的关系看成根节点和子节点的关系,两者有状态转移方程:
dp[rt][0] += max (dp[son][1], dp[son][0]); //上司不去
dp[rt][1] += dp[son][0]; //上司去,员工都不去
*/
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <vector>
#include <cmath>
using namespace std; const int MAXN = 6e3 + ;
const int INF = 0x3f3f3f3f;
bool vis[MAXN];
vector<int> edge[MAXN];
int dp[MAXN][];
int n; void DFS(int rt)
{
vis[rt] = true;
dp[rt][] = ;
for (int i=; i<edge[rt].size (); ++i)
{
int son = edge[rt][i];
if (!vis[son])
{
DFS (son);
dp[rt][] += max (dp[son][], dp[son][]);
dp[rt][] += dp[son][];
}
}
} int main(void) //URAL 1039 Anniversary Party
{
// freopen ("URAL_1039.in", "r", stdin); while (scanf ("%d", &n) == )
{
memset (vis, false, sizeof (vis));
memset (dp, , sizeof (dp));
for (int i=; i<=n; ++i) scanf ("%d", &dp[i][]); int l, k;
while (scanf ("%d%d", &l, &k) == )
{
if (l == && k == ) break;
vis[l] = true;
edge[l].push_back (k);
edge[k].push_back (l);
} int root = ;
for (int i=; i<=n; ++i)
{
if (!vis[i]) {root = i; break;}
} memset (vis, false, sizeof (vis)); DFS (root);
printf ("%d\n", max (dp[root][], dp[root][]));
} return ;
}
最新文章
- .net erp(办公oa)开发平台架构概要说明之表单设计器
- Microservice 微服务的理论模型和现实路径
- DEV柱状图----傻瓜版
- 【iCore3 双核心板】例程十八:USB_VCP实验——虚拟串口
- Matlab中bsxfun和unique函数解析
- mybatis代码生成器配置文件详解
- QT QObject::connect函数的学习
- quartus中查看网表
- Migration workstation vms to openstack kvm
- beta冲刺总结
- gitlab pipelines job执行时日志较大报错
- android实用软件tasker应用设置
- VB代码收集
- 【开源程序(C++)】获取bing图片并自动设置为电脑桌面背景
- Python 新式类与经典类
- VS2017 安装visualSVN 6.1.1 for visual studio 2017
- css一般性
- 1066. [SCOI2007]蜥蜴【最大流】
- [gj]耶稣和撒旦的关系
- 01 Java图形化界面设计&mdash;&mdash;容器(JFrame)
热门文章
- The Java library for converting Wikipedia wikitext notation to HTML
- 洛谷——P1454 圣诞夜的极光
- linux下crontab安装和使用(定时任务)
- jackson的应用
- 洛谷 P1122 最大子树和
- Ubuntu 16.04粘贴板增强工具Diodon
- neutron trouble shooting - ip can not ping
- 模拟用户点击弹出新页面不会被浏览器拦截_javascript技巧
- cocos2d-x中绘制3D图形--3D ToolKit for cocos2dx实现原理
- iOS音频播放 (二):AudioSession 转