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

电子商务网站进度的基本流程免费网站软件

电子商务网站进度的基本流程,免费网站软件,南宁建网站,wordpress手机怎么分享链接F. Roads in the Kingdom(树形dp) 题意#xff1a; 给一张n个点n条边的无向带权图 定义不便利度为所有点对最短距离中的最大值 求出删一条边之后#xff0c;保证图还连通时不便利度的最小值 $n 2e5 $\(w_i 1e9\) 思路:树形dp 这个图是一个环上挂着很多颗树#xf…F. Roads in the Kingdom(树形dp) 题意 给一张n个点n条边的无向带权图 定义不便利度为所有点对最短距离中的最大值 求出删一条边之后保证图还连通时不便利度的最小值 $n 2e5 $\(w_i 1e9\) 思路:树形dp 这个图是一个环上挂着很多颗树首先把这个环处理出来 删边只能在环上进行所以可以先求出以环上每个点为根的树的直径和最大深度dep 答案来源分为二种 树内部两点最远距离 - 直径 (树形dp 或者 两次bfs)两棵树深度最大的两点配对 假设环长度为\(k\),把环变成一个序列\(a_1,a_2,...,a_k\) 令\(a_0 a_k\) 选择\(a_0\)做起点用\(s_i\)表示第\(i\)个点到起点的距离 考虑每次断开的边为\(e(a_{i-1},a_i)\),那么答案分为三种情况 序列\(1\)到\(i-1\)中选两个点配对取最大值序列\(i\)到\(k\)中选两个点配对取最大值前后各取一个点配对取最大值 计算第一种情况 假设取的两个点为\(1xyi-1\), 则距离\(d dep[x] dep[y] dis[x][y] dep[x] - s[x] dep[y] s[y]\) 这样我们只需要顺序枚举维护\(dep[x] - s[x]\)的最大值即可 同理第二种情况只需要逆序枚举维护\(dep[x] s[x]\)的最大值即可 考虑第三种情况 假设取的点为\(1 x i - 1 , i y k\) 则距离\(d dep[x] dep[y] dis[x][y] dep[x] dep[y] s[k] - (s[y] - s[x])\) $d (dep[x] s[k] s[x]) (dep[y] - s[y]) $ 同理顺序可算出第一部分最大值逆序可以算出第二部分最大值 最后在删边后三种情况的最大值里取最小值再和树内部直径比较即可 #includebits/stdc.h #define LL long long #define P pairint,int #define ls(i) seg[i].lc #define rs(i) seg[i].rc using namespace std; const int N 2e5 10; const LL inf 1e18; int read(){int x 0;char c getchar();while(c 0 || c 9) c getchar();while(c 0 c 9) x x * 10 c - 48, c getchar();return x; } vectorPG[N]; int n,k; int a[N],pa[N],e[N]; LL s[N],dep[N],ans; void dfs(int u,int fa){pa[u] fa;for(auto v:G[u]){if(v.first fa) continue;if(pa[v.first] 0) {e[v.first] v.second;dfs(v.first,u);}else if(!k){int x u;a[0] v.first,s[1] v.second;while(x ! v.first) {a[k] x,s[k1] s[k] e[x],x pa[x];}a[k] v.first;}} } void dp(int u){pa[u] 0;for(auto v:G[u]){if(pa[v.first] ! 0){dp(v.first);ans max(ans,dep[v.first] v.second dep[u]);dep[u] max(dep[u], dep[v.first] v.second);}} } LL sL[N],sR[N],L[N],R[N];///把环变成序列断开的边左边配对右边配对左右配对的最大值 int main(){int u,v,w;n read();for(int i 1;i n;i){u read(),v read(),w read();G[u].push_back(P(v,w));G[v].push_back(P(u,w));}k 0;ans 0;dfs(1,-1);for(int i 1;i k;i) pa[a[i]] 0;for(int i 1;i k;i) dp(a[i]);LL mx -inf;L[0] sL[0] -inf;for(int i 1;i k;i){sL[i] max(sL[i-1],dep[a[i]] s[i] mx);L[i] max(L[i-1],dep[a[i]] s[k] s[i]);mx max(mx, dep[a[i]] - s[i]);}sR[k1] R[k1] mx -inf;for(int i k;i 1;i--){sR[i] max(sR[i1],dep[a[i]] - s[i] mx);R[i] max(R[i1],dep[a[i]] - s[i]);mx max(mx, dep[a[i]] s[i]);}LL tmp inf;for(int i 1;i k;i) tmp min(tmp,max(L[i-1]R[i],max(sL[i-1],sR[i])));coutmax(ans,tmp)endl;return 0; } 转载于:https://www.cnblogs.com/jiachinzhao/p/7305578.html
http://wiki.neutronadmin.com/news/299939/

相关文章:

  • 江川区住房和城乡建设局网站dw如何做网站界面
  • 企业是如何做电子商务网站浙江建设局图审网站
  • 手机版网站开发教程wordpress迁移跳转原网站
  • 南安网站建设施工企业会计案例分析论文
  • 织梦 xml网站地图wordpress 侧导航栏
  • 网站建立的连接不安全网站开发开票
  • 网站换域名了怎么办wordpress media.php
  • 响应 网站建设百度官方版
  • 做资金盘网站违法吗多语言网站怎么实现
  • 建网站找我wordpress两个域名访问
  • 重庆建设科技培训中心官方网站网页设计作业html代码大全
  • 晋中网站公司网站界面设计应该遵循的原则
  • 网站后台传照片 c windows temp 拒绝访问肇庆seo排名
  • 怎么给购物网站做推广公司黄页什么意思
  • 网站子目录济南正规网站建设公司哪家好
  • 筑建网站租车网站模板下载
  • 台州市住房和城乡建设厅网站科技期刊
  • 怎样讲卖灯的网站做的好安徽360优化
  • 上海网站设计哪家好html网页游戏制作
  • 用自己主机做网站视频网站没有icp备案怎么访问
  • 没有网站可以做百度推广吗greentree wordpress
  • 传媒网站建设公司太原关键词优化平台
  • 网网站基础建设优化知识h5做网站
  • 羊毛网站建设视频界面设计与制作就业方向
  • 什么网站做热能表好网络营销网站的功能
  • 司法政务网站群建设东凤网站
  • 怎么看网站是否被k过wordpress转服务器
  • 怀柔网站整站优化公司注册商标名字推荐
  • 贺州市八步区乡镇建设局网站扮家家室内设计网
  • php 小企业网站 cms军事新闻最新消息军事新闻