HDU6201 | 2017 ACM-ICPC 亚洲区(沈阳赛区)网络赛-H transaction transaction transaction
2017-09-11 20:49
429 查看
题意:一个n个点n-1条边的无向图,每个点每条边都有权值,求一条路径W终点-W路径-W起点的最大值;
思路:dp,dp[i]表示以i为终点的路径的最大值,若x于y相连,那么有dp[x]=max(dp[x],dp[x]-Wx-Wxy+Wy);
思路:dp,dp[i]表示以i为终点的路径的最大值,若x于y相连,那么有dp[x]=max(dp[x],dp[x]-Wx-Wxy+Wy);
#include<iostream> #include<cstdio> #include<cstring> #include<string> #include<map> #include<stack> #include<queue> #include<algorithm> #include<set> #include<vector> #include<cmath> #define lmid l,m,rt<<1 #define rmid m+1,r,rt<<1|1 #define LL long long #define rl r-l+1 using namespace std; struct node { int u,v,w; }s[200005]; int cnt; void add(int u,int v,int w) { s[cnt].u=u; s[cnt].v=v; s[cnt].w=w; cnt++; } int dp[100005]; int res[100005]; int main() { int t; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&res[i]); cnt=0; for(int i=1;i<=n-1;i++) { int a,b,c; scanf("%d%d%d",&a,&b,&c); add(a,b,c); add(b,a,c); } memset(dp,0,sizeof(dp)); 4000 for(int i=0;i<cnt;i++) { node e=s[i]; dp[e.v]=max(dp[e.v],dp[e.u]-res[e.u]-e.w+res[e.v]); } int ans=0; for(int i=1;i<=n;i++) if(dp[i]>ans) ans=dp[i]; cout<<ans<<endl; } }
相关文章推荐
- HDU6201 | 2017 ACM-ICPC 亚洲区(沈阳赛区)网络赛-H transaction transaction transaction
- HDU - 6201 transaction transaction transaction (2017 ACM-ICPC 亚洲区 (沈阳赛区) 网络赛 1008)
- HDU6195 | 2017 ACM-ICPC 亚洲区(沈阳赛区)网络赛-B cable cable cable
- HDU - 6197 array array array (2017 ACM-ICPC 亚洲区 (沈阳赛区) 网络赛 1004)
- HDU - 6205 card card card (2017 ACM-ICPC 亚洲区 (沈阳赛区) 网络赛 1012)
- HDU - 6198 number number number (2017 ACM-ICPC 亚洲区 (沈阳赛区) 网络赛 1005)
- HDU - 6195 cable cable cable (2017 ACM-ICPC 亚洲区 (沈阳赛区) 网络赛 1002)
- HDU - 6206 Apple (2017 ACM-ICPC 亚洲区 (青岛赛区) 网络赛 1001)
- 计蒜客 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B coin(求乘法逆元)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E Maximum Flow
- 2017 ACM-ICPC 亚洲区(北京赛区)网络赛
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛
- 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区) 网络赛 H.Skiing(求有向无环图的最长路)
- 计蒜客-2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛H题Skiing(拓扑序求DAG最长路)
- 计蒜客-2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛G题Query on a strin(树状数组+暴力更新)
- 重要-- 模板 计蒜客-2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛J题Our Journey of Dalian Ends (最小费用最大流)
- HDU - 6208 The Dominator of Strings (2017 ACM-ICPC 亚洲区 (青岛赛区) 网络赛 1003)
- 2017 ACM-ICPC 亚洲区(沈阳赛区)网络赛 - 02 04 05 08 12
- hihoCoder - 1578 Visiting Peking University (2017 ACM-ICPC 亚洲区 (北京赛区) 网络赛 A)
- [计蒜客16955] Islands [2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛 F]