洛谷 1131 [ZJOI2007]时态同步——树形dp
题目:https://www.luogu.org/problemnew/show/P1131
因为越高,调节一个影响到的越多,所以底下只要把子树间的差异消除了就行了,与其他部分的差异由更高的边调节。
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #define ll long long using namespace std; const int N=5e5+5; int n,rt,hd[N],xnt,to[N<<1],nxt[N<<1],w[N<<1]; ll ans,dis[N<<1]; int rdn() {int ret=0,fx=1;char ch=getchar();while(ch>'9'||ch<'0'){if(ch=='-')fx=0; ch=getchar();}while(ch>='0'&&ch<='9') ret=(ret<<3)+(ret<<1)+ch-'0',ch=getchar();return fx?ret:-ret; } void add(int x,int y,int z) {to[++xnt]=y; nxt[xnt]=hd[x]; hd[x]=xnt; w[xnt]=z;to[++xnt]=x; nxt[xnt]=hd[y]; hd[y]=xnt; w[xnt]=z; } void dfs(int cr,int fa) {for(int i=hd[cr],v;i;i=nxt[i])if((v=to[i])!=fa){dfs(v,cr);dis[cr]=max(dis[cr],dis[v]+w[i]);}for(int i=hd[cr],v;i;i=nxt[i])if((v=to[i])!=fa)ans+=dis[cr]-(dis[v]+w[i]); } int main() {n=rdn(); rt=rdn();for(int i=1,u,v,z;i<n;i++){u=rdn(); v=rdn(); z=rdn(); add(u,v,z);}dfs(rt,0);printf("%lld\n",ans);return 0; }
转载于:https://www.cnblogs.com/Narh/p/9675645.html
洛谷 1131 [ZJOI2007]时态同步——树形dp相关推荐
- 洛谷 1131 [ZJOI2007] 时态同步
题目描述 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3-.进行标号.电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点 ...
- [ZJOI2007]时态同步 树形DP
题意:给定一棵N个节点的无根树,每条边都有一个权值V,选取其中一个点作为关键点,你可以任意增加某条边的权值,求使得从关键点出发,到任意一个叶子节点的距离都相同所需要增加的权值和. 数据范围: 对于40 ...
- 洛谷P1351 联合权值(树形dp)
题意 题目链接 Sol 一道很简单的树形dp,然而被我写的这么长 分别记录下距离为\(1/2\)的点数,权值和,最大值.以及相邻儿子之间的贡献. 树形dp一波.. #include<bits/s ...
- 洛谷2015 二叉苹果树 树形DP
https://www.luogu.org/problemnew/show/P2015 二叉苹果树 时间限制: 1 Sec 内存限制: 128 MB 题目描述 有一棵苹果树,如果树枝有分叉,一定是分 ...
- 洛谷 2016 战略游戏(树形DP)
题目描述 Bob喜欢玩电脑游戏,特别是战略游戏.但是他经常无法找到快速玩过游戏的办法.现在他有个问题. 他要建立一个古城堡,城堡中的路形成一棵树.他要在这棵树的结点上放置最少数目的士兵,使得这些士兵能 ...
- 洛谷P1122 最大子树和 树形DP初步
小明对数学饱有兴趣,并且是个勤奋好学的学生,总是在课后留在教室向老师请教一些问题.一天他早晨骑车去上课,路上见到一个老伯正在修剪花花草草,顿时想到了一个有关修剪花卉的问题.于是当日课后,小明就向老师提 ...
- 洛谷P2016 战略游戏【树形dp】
P2016 战略游戏 时间限制 1.00s 内存限制 125.00MB 题目描述 Bob喜欢玩电脑游戏,特别是战略游戏.但是他经常无法找到快速玩过游戏的办法.现在他有个问题. 他要建立一个古城堡,城堡 ...
- 洛谷 1351 联合权值——树形dp
题目:https://www.luogu.org/problemnew/show/P1351 对拍了一下,才发现自己漏掉了那种拐弯的情况. #include<iostream> #incl ...
- 洛谷P3047 附近的牛 树形dp
给出一个 n ≤ 1 e 5 n\leq1e5 n≤1e5的树,每个点都有一个点权,求所有的点距离 k k k以内的所有的点的点权和. 不错的题.先简单想:如果是要求这个点向下所有距离 k k k以内 ...
最新文章
- 见了很久没见的高中同学,真好
- linux搭建--ubuntu下安装libvirt注意事项(二)
- linux中如何查询端口被占用的情况
- PushYourself
- bcd 初始化库系统卷失败_开源IP地址管理系统,告别传统IP统计方式(安装部署篇)
- Java性能优化之for循环
- 最新VMware虚拟机安装kali Linux详细教程
- ttl转rs232发送十六进制_电脑USB转TTL串口RS232串口模块
- 火狐浏览器代理设置:
- javacpp-opencv图像处理系列:国内车辆牌照检测识别系统(万份测试准确率79.7%以上)
- 一个武侠游戏的成就界面需要针对每一个成就阶段配一句话,阶段分别是:默默无闻、初涉江湖、小有所成、一代宗师。想一想你会怎么写这个文案
- openlayers地图坐标转换为屏幕像素坐标,屏幕像素坐标转成地图实际坐标
- Meta公布四款VR原型机,提出“视觉图灵测试”概念
- rest接口访问webService soap接口 用XStream javabean和xml的互转
- sip是什么?Mac电脑如何关闭sip?关闭系统完整性保护SIP的方法教程
- 用Java/Python/PHP/C#/C++各大城市招聘状况分析
- 自己学习c++过程中写下的笔记,只做基础了解使用
- 基于Scrapy框架的当当网编程开发图书定向爬虫
- js源生实现图片点击弹出放大效果
- 555定时器的原理与应用(1.1)