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

益阳市人民政府门户网站一个平台怎么推广

益阳市人民政府门户网站,一个平台怎么推广,网站关键词选取,河北省建设工程招标投标信息网原题地址 今天翻看集训队巨佬写的一篇有关于树形动规的论文时看到了这道题&#xff0c;但感觉并不需要用动规&#xff0c;求出树的直径再暴力枚举一下就搞出来了。 其实是因为我太蔡了&#xff0c;看不懂大佬在写什么orz 代码实现如下&#xff1a; #include <bits/stdc.h>…

原题地址

今天翻看集训队巨佬写的一篇有关于树形动规的论文时看到了这道题,但感觉并不需要用动规,求出树的直径再暴力枚举一下就搞出来了。

其实是因为我太蔡了,看不懂大佬在写什么orz

 

代码实现如下:

#include <bits/stdc++.h>
using namespace std;
#define int long long
#define rep(i, a, b) for (register int i = (a); i <= (b); i++)const int inf = 0x3f3f3f3f, maxn = 2e5 + 5;int n, m, ans, tmp, str, end, num_edge = 0;
int dis1[maxn], dis2[maxn], head[maxn];struct node {int to, dis, nxt;
}edge[maxn << 1];int MIN(int a, int b) {return a < b ? a : b;}void origin() {memset(dis1, 0, sizeof(head));memset(dis2, 0, sizeof(head));memset(head, -1, sizeof(head));
}int read() {int x = 0, flag = 0;char ch = ' ';while (ch != '-' && (ch < '0' || ch > '9')) ch = getchar();if (ch == '-') {flag = 1;ch = getchar();}while (ch >= '0' && ch <= '9') {x = (x << 1) + (x << 3) + ch - '0';ch = getchar();}return flag ? -x : x;
}void addedge(int from, int to, int dis) {edge[++num_edge].nxt = head[from];edge[num_edge].to = to;edge[num_edge].dis = dis;head[from] = num_edge;
}void dfs1(int u, int fa) {for (register int i = head[u]; ~i; i = edge[i].nxt) {int v = edge[i].to;if (v == fa) continue;dis1[v] = dis1[u] + edge[i].dis;if (dis1[v] > dis1[str]) str = v;dfs1(v, u);}
}void dfs2(int u, int fa) {for (register int i = head[u]; ~i; i = edge[i].nxt) {int v = edge[i].to;if (v == fa) continue;dis2[v] = dis2[u] + edge[i].dis;if (dis2[v] > dis2[end]) end = v;dfs2(v, u);}
}void dfs3(int u, int fa) {for (register int i = head[u]; ~i; i = edge[i].nxt) {int v = edge[i].to;if (v == fa) continue;dis1[v] = dis1[u] + edge[i].dis;dfs3(v, u);}
}void dfs4(int u, int fa) {for (register int i = head[u]; ~i; i = edge[i].nxt) {int v = edge[i].to;if (v == fa) continue;dis2[v] = dis2[u] + edge[i].dis;dfs4(v, u);}
}void write(int x) {if (x < 0) {putchar('-');x = -x;}if (x > 9) write(x / 10);putchar(x % 10 + '0');
}signed main() {origin();n = read(), m = read();rep(i, 1, m) {int u, v, w;u = read(), v = read(), w = read();addedge(u, v, w);addedge(v, u, w);}dfs1(1, 0);dfs2(str, 0);ans = dis2[end];memset(dis1, 0, sizeof(head));memset(dis2, 0, sizeof(head));dfs3(str, 0);dfs4(end, 0);rep(i, 1, n) {int flag = MIN(dis1[i], dis2[i]);if (flag > tmp) tmp = flag;}ans += tmp;write(ans);return 0;
}
View Code

转载于:https://www.cnblogs.com/Kirisame-Marisa/p/10774770.html

http://www.lbrq.cn/news/2589211.html

相关文章:

  • 广州微信网站建设公司怎么优化关键词排名优化
  • 自己建私人网站做外贸不好做seo 排名 优化
  • 深圳安鸿源建设网站北京seo专业团队
  • 如何做2级网站站长工具app
  • app需要建网站吗信息服务平台有哪些
  • 自己怎样建设网站百度云网盘
  • 小吃加盟网站大全seo实战技巧100例
  • 湖南做网站 要上磐石网络百度指数的基本功能
  • 东莞模板网站好优化大师电脑版官网
  • wordpress手机底部菜单网站seo设置是什么意思
  • 唐山网站制作专业网址搜索引擎入口
  • 网站建设中网页代码怎么利用互联网推广
  • 怎样在网站上做办公家具安卓优化大师旧版本
  • 新办公司网上核名在哪个网站做天津百度分公司
  • 建设书法网站的主题是seo常用的优化工具
  • 上海私人做网站南昌seo报价
  • 廊坊网站建设-纵横网络 网站做网络推广怎么收费
  • 餐饮类网站建设达到的作用seo单页面优化
  • 电商网站建设外包关键词下载
  • 360做网站经常打骚扰电话优化大师卸载不了
  • 学校建设网站目标陕西网站制作
  • 驻马店360网站建设线上平台推广方式
  • php动态网站开发 项目教程百度客服工作内容
  • 大连英文网站建设百度一下就一个
  • 石家庄哪里有网站建设青岛网站推广关键词
  • 常州男科医院哪一个好长沙seo 优化选智投未来no1
  • dw做的网站如何上传云服务器神马关键词快速排名软件
  • wordpress优酷插件下载福州百度快照优化
  • 做性的网站有哪些今日重大新闻头条
  • 可以做渗透测试的网站可以进入任何网站的浏览器
  • javacc实现简单SQL解析器
  • Apache IoTDB(3):时序数据库 IoTDB Docker部署实战
  • (一)全栈(react配置/https支持/useState多组件传递/表单提交/React Query/axois封装/Router)
  • 每日五个pyecharts可视化图表-bars(2)
  • 【昇腾推理PaddleOCR】生产级部署方式
  • 【数据结构初阶】--排序(二)--直接选择排序,堆排序