当前位置: 首页 > wzjs >正文

建设网站建设网页制作0402高设计词网站的建设流程

建设网站建设网页制作0402高设计词,网站的建设流程,有专门做英文字幕的网站吗,创业做旅游网站AT_abc409_e [ABC409E] Pair Annihilation 赛时没开longlong挂了。 思路 首先我们可以把这棵树转化为一颗有根树,且所有电子的都朝根节点移动。 那么接下来我们就需要选择一个最优的树根。 考虑换根dp。 但是可以发现换根时答案其实是没有变化的。 我们设 f…

AT_abc409_e [ABC409E] Pair Annihilation

赛时没开longlong挂了。

思路

首先我们可以把这棵树转化为一颗有根树,且所有电子的都朝根节点移动。

那么接下来我们就需要选择一个最优的树根。

考虑换根dp。

但是可以发现换根时答案其实是没有变化的。

我们设 f i f_i fi 表示以 i i i 为根的子树电子全部集中到 i i i 所耗费的能量, g i g_i gi 表示以 i i i 为根的子树电子全部集中到 i i i 后的电子数量。

图片

如图所示,我们设一号节点与二号节点之间的距离为 v v v,当我们要把根从 1 换到 2 时,相当于将原本要从 2 号节点移动到 1 号节点的电子留在 2 号,其他电子在 1 号节点,此时只有 1 号节点和 2 号节点存在电子。

我们设此时 1 号节点的电子数量(此处负电子数量算作负数)为 a a a,2 号节点的电子数量为 b b b,那么有 a + b = 0 a+b=0 a+b=0 ∣ a ∣ = ∣ b ∣ |a|=|b| a=b,那么此时无论我们把电子从 2 号节点移动到 1 号节点还是从 1 号节点移动到 2 号节点对答案产生的贡献是不变的,所以我们可以直接以任意节点为根跑dfs求出答案。

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,a[100010],f[100010],g[100010];
struct N{ll y,v;
}; 
vector<N> e[100010];
void dfs(int x,int xfa){f[x]=0;g[x]=a[x];//g要初始化为当前节点电子数量 for(N y:e[x])if(y.y!=xfa){dfs(y.y,x);//遍历子节点 f[x]+=f[y.y]+abs(g[y.y])*y.v;//更新f g[x]+=g[y.y];//更新g }
}
int main(){cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1,x,y,v;i<n;i++){cin>>x>>y>>v;e[x].push_back({y,v});//建树 e[y].push_back({x,v});}dfs(1,0);//dfs求f,g数组 cout<<f[1];//此处我们以1为根,所以输出f[1] return 0;
}
http://www.dtcms.com/wzjs/275082.html

相关文章:

  • 婴儿网站建设住栏目广州网络推广万企在线
  • 怎么防止别人复制网站网站产品推广
  • 做网站数据对电脑要求宁波seo优化排名
  • 怎么做监测网站的浏览量世界十大网站排名
  • 做网站开发学什么软件今天国际新闻最新消息10条
  • 电商网站开发 思维导图关键词挖掘啊爱站网
  • 专业企业网站建设定制营销策略方案
  • intitle 无线网站制作网站优化的方法有哪些
  • wordpress门户建站做网站价格
  • 店铺设计图纸及效果图大全上海有实力的seo推广咨询
  • 公司网站兰州建设需要多少钱新站整站快速排名
  • 网网站建设站建设欧洲站fba
  • 怎样用网站做app新型营销方式
  • 新型网络营销方式百度广告优化师
  • 山东浩景建设有限公司网站免费推广有哪些
  • 网上虚拟银行注册网站下载安装百度一下
  • 做关于什么样的网站好海外推广渠道
  • 北京公司注册核名网站seo顾问
  • 企业网站搭建新感觉建站知乎关键词排名
  • 偃师建设局网站路由优化大师官网
  • 一流的营销型网站建设广告传媒公司
  • 中简风格wordpress主题seo系统培训班
  • 网站建设培训合肥沈阳seo关键词
  • 海淀青岛网站建设网络营销渠道策略
  • 潍坊哪个网站建设公司好教程推广优化网站排名
  • 专业做网站 郑州花都网络推广seo公司
  • 上海那家公司做响应式网站建设星巴克网络营销案例分析
  • 苏州建设公司网站建设慈溪seo
  • logo素材网站广告代发平台
  • 微信开发者账号网站优化推广价格