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

林西网站建设优化什么是百度推广

林西网站建设优化,什么是百度推广,图书馆 网站开发 总结,网站常见结构有那些Problem - H - Codeforces 题意&#xff1a; 思路&#xff1a; 手玩一下样例就能发现简单结论&#xff1a; v 离它所在的树枝的根的距离 < m 离这个根的距离时是 YES 否则就是NO 实现就很简单&#xff0c;先去树上找环&#xff0c;然后找出这个根&#xff0c;分别给a 和…

Problem - H - Codeforces

题意:

思路:

手玩一下样例就能发现简单结论:

v 离它所在的树枝的根的距离 < m 离这个根的距离时是 YES

否则就是NO

实现就很简单,先去树上找环,然后找出这个根,分别给a 和 b BFS一遍,得出两个dis数组,比较一下即可

对于只有的环情况 和 m = v 的情况需要特判

Code:

#include <bits/stdc++.h>constexpr int N = 2e5 + 10;
constexpr int M = 1e6 + 10;
constexpr int Inf = 1e9;std::queue<int> q1, q2;
std::vector<int> adj[N];int n, a, b;
int top = 0;
int u[N], v[N];
int st[N], r[N];
int dis1[N];
int dis2[N];int find_r(int u, int fa) {if (st[u]) return u;st[u] = 1;for (auto v : adj[u]) {if (v == fa) continue;int t = find_r(v, u);if (t) {r[++ top] = u;st[u] = 2;return t == u ? 0 : t;}}return 0;
}
void bfs1(int u) {memset(dis1, 0x3f, sizeof(dis1));dis1[u]= 0;q1.push(u);while(!q1.empty()) {int u = q1.front();q1.pop();for (auto v : adj[u]) {if (dis1[v] > dis1[u] + 1) {dis1[v] = dis1[u] + 1;q1.push(v);}}}
}
void bfs2(int u) {memset(dis2, 0x3f, sizeof(dis2));dis2[u] = 0;q2.push(u);while(!q2.empty()) {int u = q2.front();q2.pop();for (auto v : adj[u]) {if (dis2[v] > dis2[u] + 1) {dis2[v] = dis2[u] + 1;q2.push(v);}}}
}
void solve() {std::cin >> n >> a >> b;top = 0;while(!q1.empty()) q1.pop();while(!q2.empty()) q2.pop();for (int i = 1; i <= n; i ++) {st[i] = 0;adj[i].clear();}for (int i = 1; i <= n; i ++) {std::cin >> u[i] >> v[i];adj[u[i]].push_back(v[i]);adj[v[i]].push_back(u[i]);}if (a == b) {std::cout << "NO" << "\n";return;}find_r(1, 0);bfs1(b);int miu1 = Inf, ansu = 0;for (int i = 1; i <= n; i ++) {if (st[i] == 2 && miu1 > dis1[i]) {miu1 = dis1[i];ansu = i;}}if (st[b] == 2) {std::cout << "YES" << "\n";return;}bfs2(a);int ans1 = dis2[ansu];int ans2 = miu1;if (ans1 > ans2) std::cout << "YES" << "\n";else std::cout << "NO" << "\n";
}
signed main() {std::ios::sync_with_stdio(false);std::cin.tie(nullptr);int t = 1;std::cin >> t;while(t --) {solve();}return 0;
}

 

http://www.ds6.com.cn/news/97528.html

相关文章:

  • 淄博网站建设有实力国外网站推广平台有哪些?
  • 外贸展示型模板网站广东省自然资源厅
  • 建设视频网站需要什么知识网站开发一般多少钱
  • 网站建设丶金手指专业宁德市区哪里好玩
  • 做外包的网站有哪些问题如何提高搜索引擎优化
  • 天津哪里做网站河南郑州做网站的公司
  • vps如何建两个网站合作seo公司
  • 软件开发网站建设维护网络营销策略分析报告
  • 欢迎访问中国建设银行官方网站百度广告竞价
  • 厦门软件园网站建设网络平台推广方式
  • 网站建设投标书组成网络促销方案
  • 网站建设后台百度官网下载安装到桌面上
  • 山东莱钢建设有限公司网站创新营销方式有哪些
  • 世界500强企业排名2021做seo需要用到什么软件
  • 建立网站并以此为基础从事经营活动的企业称为什么如何推广app
  • 微信scrm在线排名优化工具
  • 怎样组建企业网站搜索引擎排行榜前十名
  • 合肥的网站建设官方推广平台
  • 广东省两学一做网站新媒体运营
  • 导视设计方法站内优化
  • 景区外文网站建设新冠疫苗接种最新消息
  • 无锡网站建设开发个人怎么接外贸订单
  • 做动漫网站需要服务器么谷歌seo排名优化
  • 网页设计怎么做网站汕头seo网络推广服务
  • 家用100mb光纤做网站十大免费cms建站系统介绍
  • 为什么要立刻做网站杭州网站设计制作
  • python做网站有什么优势蜘蛛seo超级外链工具
  • 网站制作 公开课网站策划方案书
  • 网站建设的过程seo入门培训学校
  • 昌平网站建设哪家强网站域名解析ip