【洛谷1131】 [ZJOI2007]时态同步
树形结构的入门题,一遍DFS即可解决,注意答案开long long
#include<cstdio>
#include<iostream>
#include<algorithm>
#define MAXN 500005
using namespace std;
int read(){
char c=getchar();int x=;
while(c<''||c>'')c=getchar();
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x;
}
int pre[MAXN<<],other[MAXN<<],last[MAXN],cnt,N,root,p[MAXN];
long long val[MAXN<<],f[MAXN],ans;
void connect(int x,int y,long long z){
pre[++cnt]=last[x];
other[cnt]=y,val[cnt]=z;
last[x]=cnt;
}
void Dfs(int k){
for(int i=last[k];i;i=pre[i])
if(other[i]!=p[k]){p[other[i]]=k;Dfs(other[i]);}
for(int i=last[k];i;i=pre[i])
if(other[i]!=p[k])f[k]=max(f[k],val[i]+f[other[i]]);
for(int i=last[k];i;i=pre[i])
if(other[i]!=p[k])ans+=f[k]-(f[other[i]]+val[i]);
}
int main()
{
N=read(),root=read();
for(int i=;i<N;i++){
int x=read(),y=read(),z=read();
connect(x,y,z);connect(y,x,z);
}
Dfs(root);
printf("%lld\n",ans);
return ;
}
P.S.本来要在洛谷分类搜道树形dp题,结果这个好像不算dp,被我一遍A了233,好爽
【洛谷1131】 [ZJOI2007]时态同步的更多相关文章
- BZOJ1060或洛谷1131 [ZJOI2007]时态同步
BZOJ原题链接 洛谷原题链接 看上去就觉得是一道树形\(\mathtt{DP}\),不过到头来我发现我写了一个贪心.. 显然对越靠近根(记为\(r\))的边进行加权贡献越大,且同步的时间显然是从根到 ...
- 洛谷 1131 [ZJOI2007] 时态同步
题目描述 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3….进行标号.电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点 ...
- 洛谷 1131 [ZJOI2007]时态同步——树形dp
题目:https://www.luogu.org/problemnew/show/P1131 因为越高,调节一个影响到的越多,所以底下只要把子树间的差异消除了就行了,与其他部分的差异由更高的边调节. ...
- 洛谷 P1131 [ZJOI2007]时态同步
P1131 [ZJOI2007]时态同步 题目描述 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3….进行标号.电路板的各个节点由若干 ...
- [洛谷P1131][ZJOI2007]时态同步
题目大意:给你一棵树,每条边有边权,要求增加一些边的边权,使得根节点到每个叶子节点的距离相等,求出最少共增加多少边权. 题解:树形$DP$,对于每个点,如果它到它的子树中的叶子节点距离不同,一定要在这 ...
- 洛谷 P1131 [ZJOI2007]时态同步 树形DP
题目描述 分析 我们从根节点开始搜索,搜索到叶子节点,回溯的时候进行维护 先维护节点的所有子节点到该节点最大边权(边权为叶子节点到同时到达它所需要时间) 然后维护答案,答案为最大边权减去所有到子节点的 ...
- 【BZOJ1060】[ZJOI2007]时态同步 树形DP
[BZOJ1060][ZJOI2007]时态同步 Description 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3-.进行标号.电路 ...
- 洛谷 P1169 [ZJOI2007]棋盘制作
2016-05-31 14:56:17 题目链接: 洛谷 P1169 [ZJOI2007]棋盘制作 题目大意: 给定一块矩形,求出满足棋盘式黑白间隔的最大矩形大小和最大正方形大小 解法: 神犇王知昆的 ...
- BZOJ 1060: [ZJOI2007]时态同步( 树形dp )
坑爹...数据是错的..详见discuss http://www.lydsy.com/JudgeOnline/wttl/wttl.php?pid=1060 先求根到叶子的距离最大值x, 然后把所有叶 ...
- bzoj千题计划163:bzoj1060: [ZJOI2007]时态同步
http://www.lydsy.com/JudgeOnline/problem.php?id=1060 以激发器所在节点为根 终止节点一定是叶节点 记录点的子树内最深的终止节点 然后从根往下使用道具 ...
随机推荐
- git 教程2 (git常用命令解说)
<1>$ git -- help (调出git的帮助文档) <2>$ git +命令 --help (查看某个具体命令的帮助文档) <3>$ git --versi ...
- 关于ajax异步请求不到数据的问题 302跨域请求
项目大致问题是这样的 在线咨询模块的数据是通过ajax异步加载来请求到数据,然后动态解析并且显示 前台页面的请求代码 后台action: 另外就是这个项目还有一个登陆权限的认证,如果不登录后台或者登录 ...
- snmp--CentOS安装Net-SNMP小计
http://blog.csdn.net/tmpbook/article/details/39620549
- iOS-UIImageView载入网络下载的图片(异步+多线程)
最原始的载入网络下载的图片方式: //最原始载入网络图片方法,相当堵塞主线程,界面卡顿 -(void)setImageWithURL:(NSString *)imageDownloadUrl{ UII ...
- 9.9递归和动态规划(八)——给定数量不限的硬币,币值为25分,10分,5分,1分,计算n分有几种表示法
/** * 功能:给定数量不限的硬币.币值为25分,10分.5分.1分,计算n分有几种表示法. */ public static int makeChange(int n){ return make ...
- UESTC--1265--宝贵资源(简单数学)
宝贵资源 Time Limit: 1000MS Memory Limit: 65535KB 64bit IO Format: %lld & %llu Submit Status Des ...
- hdoj--2522--A simple problem(数学模拟)
A simple problem Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- 【转】详述iOS国际化
原文网址:http://www.cocoachina.com/ios/20151120/14258.html 在真正将国际化实践前,只知道通过NSLocalizedString方法将相应语言的字符串加 ...
- 最小生成树基础 (Kruskal)
最小生成树 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status ...
- C# Keywords - as
记录一下在日常开发过程中遇到的一些C# 基础编程的知识! 希望以后能用的着.知识是在平常的开发过程中去学到的.只有用到了,你才能深入的理解它,并用好它. 本资料来源于:MSND 下面是一些相关的cod ...