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

武汉市网站建设seo交流群

武汉市网站建设,seo交流群,网站 文本编辑器,建设金融行业网站K LilaS的特殊图判断 - 第七届校赛正式赛 —— 补题 题目大意: 给定一个无向图,图中有 N N N 个顶点,编号为 1 − N 1-N 1−N , M M M 条边,编号为 1 − M 1-M 1−M 。第 i i i 条边连接顶点 u i u_i ui​ 和 v…

K LilaS的特殊图判断 - 第七届校赛正式赛 —— 补题

题目大意:

给定一个无向图,图中有 N N N 个顶点,编号为 1 − N 1-N 1N M M M 条边,编号为 1 − M 1-M 1M 。第 i i i 条边连接顶点 u i u_i ui v i v_i vi 。存在重边和自环。

有没有一种算法能快速判断该无向图中的每个连通部分是否满足:连通部分的顶点和边的数量相同

如果该图中每个连通部分都满足条件,则输出 Yes;否则,输出 No

1 < = N < = 2 ∗ 1 0 5 1<=N<=2*10^5 1<=N<=2105

0 < = M < = 2 ∗ 1 0 5 0<=M<=2*10^5 0<=M<=2105

1 < = u i < = v i < = N 1<=u_i<=v_i<=N 1<=ui<=vi<=N

思路:

考虑并查集,维护祖先节点中 顶点个数 和 边的个数

int fa[N],sz[N],ver[N];fa[i]=i,sz[i]=1,ver[i]=0;int u,v;
u=find(u),v=find(v);
如果祖先节点相同,那么点的个数不用增加,考虑给祖先节点多加一条边if(u==v){ver[u]++;}
如果祖先节点不相同,那么将这两个连通块合并,随便找一个节点为祖宗节点即可else{fa[v]=u;sz[u]+=sz[v];ver[u]+=ver[v]+1;//这条边}

代码:

#include <bits/stdc++.h>
using namespace std;
#define int long long
#define fi first
#define se second
#define PII pair<int,int>
#define lowbit(x) x&-x
#define ALL(x) x.begin(),x.end()const int mod = 1e9 + 7;
const int N = 2e5 + 10;int fa[N],sz[N],ver[N];
int n,m;
int find(int x){if(x==fa[x]) return x;return fa[x]=find(fa[x]);
}void solve() {cin>>n>>m;for(int i=1;i<=n;i++){fa[i]=i;sz[i]=1;ver[i]=0;}for(int i=1;i<=m;i++){int u,v;cin>>u>>v;u=find(u),v=find(v);if(u==v){ver[u]++;continue;}if(u!=v){fa[v]=u;sz[u]+=sz[v];ver[u]+=ver[v]+1;}else{ver[u]++;}}//	cout<<'\n';for(int i=1;i<=n;i++){int u=find(i);
//		cout<<sz[u]<<" "<<ver[u]<<'\n';if(sz[u]!=ver[u]){cout<<"No\n";return ;}}cout<<"Yes\n";
}signed main() {std::ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int T = 1;
//	cin >> T;while (T--) {solve();}return 0;
}
http://www.dtcms.com/wzjs/523438.html

相关文章:

  • 上海活动策划公司排行榜宁波网络推广优化方案
  • 信息流网站建设google搜索优化
  • 飞鱼网站建设网站推广的方式和方法
  • 上海地区做旧物回收的网站济南谷歌推广
  • 网站优化推广软件hao123网址大全浏览器设为主页
  • 福州网站建设哪家公司好网络推广外包一年多少钱
  • 做网站和做appseo顾问培训
  • 合肥优化网站自媒体十大平台
  • 哪里有网站制作平台网站建设的公司
  • 自己能建网站吗关键词seo排名公司
  • 做推广适合哪些网站广安网站seo
  • 做培训体系的网站农大南路网络营销推广优化
  • 公司注册网上注册怎么做好的seo平台
  • 网站上怎么做游戏百度优化是什么
  • 网站建设中提示页面广告推广怎么找客户
  • 易企秀网站开发技术搜索引擎优化包括哪些
  • 南京大型门户网站制作安卓优化大师app下载
  • 四川住房建设和城乡建设厅网站百度seo排名优化是什么
  • 网站建设维护价格青岛今天发生的重大新闻
  • 查询域名后缀网站搭建自己的网站
  • 余姚建站公司产品怎么在网上推广
  • 专业网站制作电话百度网页版电脑版
  • 网站url标准化班级优化大师免费下载
  • app软件大全免费seo广州工作好吗
  • 网站建设公司中心网站免费软件
  • 广元如何做百度的网站网站模板哪家好
  • 网站维护提醒php文件关键词挖掘查询工具爱站网
  • 做视频点播网站要多少带宽恢复原来的百度
  • 长宁区网站建设网怎么免费创建自己的网站
  • 太原做网站公司哪家好国内搜索引擎排名第一的是