问题描述

LG1131


题解

正难则反,把从一个点出发到叶子结点看做从叶子结点走到那个点。

DP方程很显然。


\(\mathrm{Code}\)

#include<bits/stdc++.h>
using namespace std; #define int long long void read(int &x){
x=0;char ch=1;int fh;
while(ch!='-'&&(ch>'9'||ch<'0')) ch=getchar();
if(ch=='-') ch=getchar(),fh=-1;
else fh=1;
while(ch>='0'&&ch<='9') x=(x<<1)+(x<<3)+ch-'0',ch=getchar();
x*=fh;
} const int maxn=500000+7; int n,mx[maxn],opt[maxn],S,dis[maxn];
int Head[maxn],to[maxn*2],tot=1,Next[maxn*2],w[maxn*2];
int ans; void add(int x,int y,int z){
to[++tot]=y,Next[tot]=Head[x],Head[x]=tot,w[tot]=z;
} void dfs(int x,int f){
for(int i=Head[x];i;i=Next[i]){
int y=to[i];
if(y==f) continue;dfs(y,x);
}
for(int i=Head[x];i;i=Next[i]){
int y=to[i];
if(y==f) continue;
mx[x]=max(mx[x],w[i]);
}
for(int i=Head[x];i;i=Next[i]){
int y=to[i];
if(y==f) continue;
ans=ans+mx[x]-w[i];
}
for(int i=Head[f];i;i=Next[i]){
int y=to[i];
if(y==x) w[i]+=mx[x];
}
} signed main(){
read(n);read(S);
for(int i=1,x,y,z;i<n;i++){
read(x);read(y);read(z);
add(x,y,z);add(y,x,z);
}
dfs(S,0);
printf("%lld\n",ans);
return 0;
}

最新文章

  1. c++11新的小猫腻
  2. Maven入门系列(二)--设置中央仓库的方法
  3. 用Wireshark简单分析HTTP通信
  4. 以Self Host的方式来寄宿Web API
  5. Adaboost 卡口车辆检测训练
  6. 微软职位内部推荐-SW Engineer for Skype
  7. HTML 快速入门
  8. oracle的listener.ora sqlnet.ora tnsnames.ora三个文件的关联性
  9. UITextView 相关知识点
  10. 【写一个自己的js库】 4.完善跨浏览器事件操作
  11. hdu 5532 Almost Sorted Array(模拟)
  12. Objective-C 类,实例成员,静态变量,对象方法,类方法(静态方法),对象,
  13. MySQL与Oracle的语法区别详细对比 (转)
  14. HDU4828 Grids 2014百度之星预赛问题解决
  15. python修改注册表
  16. java --基本数据类型间的转换
  17. Metasploit渗透测试实际应用
  18. 【CSS 技能提升】 :before和:after的使用
  19. 对Swoole、Workerman和php自带的socket的理解
  20. PHP 中如何创建和修改数组?

热门文章

  1. RESTful 架构风格
  2. Android8.1 MTK平台 SystemUI源码分析之 网络信号栏显示刷新
  3. AndroidStudio配置好了so文件运行却报错 java.lang.UnsatisfiedLinkError:
  4. CODING 2.0:为什么我们需要 DevOps
  5. centos7设置静态ip-修改配置文件方式
  6. node_modules/.bin/babel : 无法加载文件 D:\node\node_project\es6\node_modules\.bin\babel.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.co m/fwlink/?LinkID=135170 中的 about_Execution_Policies。
  7. 【使用篇二】Quartz自动化配置集成(17)
  8. C++ Debug 模式下程序崩溃: Expression: is_block_type_valid(header-&gt;block_use)
  9. mysql 事务四要素杂谈
  10. 从荣耀 xSport Pro 运动蓝牙耳机发布看蓝牙立体声耳机的新动态