P1131-[ZJOI2007]时态同步【树形dp】
正题
题目大意
一棵树,可以增长边权长度,要求根节点要每个叶子节点路径长度相等,求最少增加次数。
解题思路
肯定优先修改上面的边,因为这样可以影响最多的点,那么对于每个节点我们都要使它到每个它子树中叶子节点的长度相等就好了。直接树形dpdpdp。
codecodecode
#include<cstdio>
#include<algorithm>
#define ll long long
using namespace std;
const ll N=500010;
struct node{ll to,w,next;
}a[N*2];
ll ls[N],tot,last[N],f[N],s,n;
void addl(ll x,ll y,ll w)
{a[++tot].to=y;a[tot].w=w;a[tot].next=ls[x];ls[x]=tot;
}
void dp(ll x,ll fa,ll w)
{last[x]=w;for(ll i=ls[x];i;i=a[i].next){ll y=a[i].to;if(y==fa) continue;dp(y,x,w+a[i].w);last[x]=max(last[y],last[x]);}for(ll i=ls[x];i;i=a[i].next){ll y=a[i].to;if(y==fa) continue;f[x]+=f[y];if(last[y]<last[x])f[x]+=last[x]-last[y];}
}
int main()
{scanf("%lld%lld",&n,&s);for(ll i=1;i<n;i++){ll x,y,w;scanf("%lld%lld%lld",&x,&y,&w);addl(x,y,w);addl(y,x,w);}dp(s,0,0);printf("%lld",f[s]);
}
P1131-[ZJOI2007]时态同步【树形dp】相关推荐
- [ZJOI2007]时态同步 树形DP
题意:给定一棵N个节点的无根树,每条边都有一个权值V,选取其中一个点作为关键点,你可以任意增加某条边的权值,求使得从关键点出发,到任意一个叶子节点的距离都相同所需要增加的权值和. 数据范围: 对于40 ...
- 洛谷 1131 [ZJOI2007]时态同步——树形dp
题目:https://www.luogu.org/problemnew/show/P1131 因为越高,调节一个影响到的越多,所以底下只要把子树间的差异消除了就行了,与其他部分的差异由更高的边调节. ...
- P1131 [ZJOI2007] 时态同步
P1131 [ZJOI2007] 时态同步 题意: 有一颗树,有一个点是激发器,从这个点开始可以产生一个激励电流,通过导线传向每一个它所连接的节点,经过一个边的花费为w[i],你有一个道具,每用一次可 ...
- P1131 [ZJOI2007]时态同步
传送门 DP 题目讲得很清楚"对于电路板的任何两个节点,都存在且仅存在一条通路". 所以电路板是一颗树 题目要求叶子节点时态一致 如果从根开始枚举时间肯定超时 考虑反过来 从叶子节 ...
- [luogu1131][bzoj1060][ZJOI2007]时态同步【树形DP】
传送门:https://www.luogu.org/problemnew/show/P1131 题目大意 给你一棵树,每条边有边权,要求增加一些边的边权,使得根节点到每个叶子节点的距离相等,求出最少共 ...
- 1060. [ZJOI2007]时态同步【树形DP】
Description 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数 字1,2,3-.进行标号.电路板的各个节点由若干不相交的导线相连接,且对于电路 ...
- 【BZOJ1060】[ZJOI2007] 时态同步(树形DP)
点此看题面 大致题意: 给你一棵带权树,每次使用道具可以将某条边的边权加\(1\),问你至少需要使用多少次道具,才能使每个叶子节点到根节点的距离相等. 贪心的思想 首先,我们应该先有一个贪心的思想. ...
- ZJOI2007时态同步
描述 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3-.进行标号.电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点,都 ...
- 洛谷 1131 [ZJOI2007] 时态同步
题目描述 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3-.进行标号.电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点 ...
- [ZJOI2007] 时态同步
题面 显然的一个建模是,每个叶子对应一个权值,代表比最晚的叶子早了多久,然后我们要做的就是给每条边赋上值,使得每个叶子到根的路径上的所有边权值和等于叶子的权值. 我们贪心的想一想,必然是离根越近的边赋 ...
最新文章
- YOLOv5在建筑工地中安全帽佩戴检测的应用
- Elasticsearch教程-从入门到精通
- matlab 两幅图不同,如何把两个不同M文件的图放在一起
- 20145233《网络对抗》Exp8 Web基础
- axios get请求方式
- mac系统,鼠标移动太慢
- Flume OOM 处理
- 白鹭引擎制作滚动框,类似div的oveflow
- 应届生去软通动力怎么样_超强干货:应届生如何找实习工作?
- 小米主办HBaseCon亚洲峰会,打造世界一流的“工程师理想乐园”
- Intent与intent-filter
- 静态资源文件自动压缩并替换成压缩版本(大型网站优化技术)
- json学习笔记,json与js对象格式的转换,js对象转json字符串,json格式转js对象
- 压力应力测试软件,PODOMED(PODOMED) 足底应力测试分析系统-运动科学实验室
- C语言程序设计(十七)12.12
- 北师大19秋计算机在线1,北师19秋《专科英语(二)》在线作业1【满分答案】
- 3d游戏建模学习心得,自学maya,zbrush,substance一个月的感想
- 大数据分析原地踏步 原来是分析工具面临信任问题
- 魅族设置语音录音服务器,魅族手机留言录音功能使用方法介绍
- Simulink之S-function函数笔记之一
热门文章
- 超详细图解!【MySQL进阶篇】MySQL架构原理
- 单调谐回路谐振放大器等效电路分析_手把手教你如何分析三极管电路
- java中file_详细介绍Java中的File类
- 1093芯片做正弦波逆变器_长途自驾游“缺电”如何选购正确车载逆变器,避开商家套路...
- leetcode406. 根据身高重建队列
- 关于导入c3p0-0.9.5.5.jar包引发NoClassDefFoundError、ClassNotFoundException
- ES6的Set和Map你都知道吗?一文了解集合和字典在前端中的应用
- [SpringSecurity]web权限方案_用户认证_自定义用户登录页面
- [JavaWeb-JDBC]JDBC概念
- Chain of responsibility(职责链)--对象行为型模式