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

安康公司网站制作互联网营销工具有哪些

安康公司网站制作,互联网营销工具有哪些,天津做网站印标,ui网页设计实训报告E - Reachable Sethttp://E - Reachable Set 题意概述 : 给定一个无向图, 对于每个 ,解决以下问题: -选择最少的一些顶点,使得删除这些顶点及其关联的所有边后 点1只能到达以内的所有点 牵制芝士 :头文…

E - Reachable Sethttp://E - Reachable Set

题意概述 :

给定一个无向图,

对于每个  k=1\sim n,解决以下问题:

-选择最少的一些顶点,使得删除这些顶点及其关联的所有边后 点1能到达1 \sim k以内的所有


牵制芝士 :头文件,建图,带权并查集


题解 :

首先,我们可以将题目拆成两部分

1 :判断一个点能不能实现目标

2 :对于能实现的点,计算答案


第一部分 :

可以用并查集来处理

只与比k小的节点连边,并统计与1所在集合的节点数

由于只与比k小的节点连边,所以集合中只会有小于等于k的节点

所以当且仅当点1所在集合的节点数等于k时,点1才会与1\sim k都联通

第二部分 :

使用vis数组标记目前是否能从1\sim k直接扩展到点x

ans表示vis值为1的节点的个数

所有大于k能扩展点,都需要被删除

因为只处理能实现目标的节点,所以答案就是ans-k

代码 :

#include<bits/stdc++.h>
using namespace std;
int n,m,fa[210000],sum[210000];
vector<int>a[210000];
bool vis[210000];
int find(int x)
{if(x==fa[x]) return x;return fa[x]=find(fa[x]);
}
void add(int x,int y)
{int fax=find(x);int fay=find(y);if(fax>fay) swap(fax,fay);if(fax!=fay){sum[fax]+=sum[fay];fa[fay]=fax;}
}
int main()
{scanf("%d%d",&n,&m);for(int i=1;i<=n;i++){fa[i]=i;sum[i]=1;}for(int i=1;i<=m;i++){int x,y;scanf("%d%d",&x,&y);a[x].push_back(y);a[y].push_back(x);}vis[1]=1;int ans=0;for(int i=1;i<=n;i++){for(int j=0;j<a[i].size();j++){if(a[i][j]<i) add(a[i][j],i);//第一部分if(!vis[a[i][j]]) ans++;//第二部分vis[a[i][j]]=1;}printf("%d\n",sum[1]!=i?-1:(ans-i));}return 0;
}

http://www.dtcms.com/wzjs/92694.html

相关文章:

  • 用模板搭建的网站备案吗太原关键词优化报价
  • 个体工商户年检入口论坛seo网站
  • 长沙有做网站的吗做推广的技巧
  • 博彩网站开发者犯法吗seo外链论坛
  • 深圳知名的网站公司简介百度网盘在线观看资源
  • 黄冈建设局网站首页百度云群组
  • 奉贤网站建设哪家好企业网站的优化建议
  • 做的很好的淘宝客网站东莞网
  • 河北网站开发报价关键词怎么选择技巧
  • 网上网站建设教程软文发稿平台
  • 尖草坪网站建设广告关键词有哪些
  • 广州免费公司注册整站优化 mail
  • 手机营销网站模板免费下载如何快速推广自己的品牌
  • 个人网站的建设营销型网站内容
  • 怎么弄一个自己的app平台沈阳seo排名收费
  • 汽车做网站济南网络推广
  • 自己建立网站用什么软件app软件推广平台
  • php网站建设案例教程视频教程企业seo排名外包
  • 苹果网站用什么做的吗沧州百度推广公司
  • 肇庆网站快速排名提升链接网
  • 如何做解析网站广州网络营销推广公司
  • 做微信网站公司名称公众号seo排名优化
  • 网站落地页制作推广引流渠道有哪些
  • wordpress 获取别名惠东seo公司
  • 那些网站可以做团购图片百度搜索
  • 做设计在哪个网站找图片大全西安网站建设平台
  • 沭阳网站建设招聘郑州网站定制
  • 中山网站推广全国唯一一个没有疫情的城市
  • 多语言网站思路最好用的磁力搜索器
  • 网站开发无使用期限怎么摊销长沙大型网站建设公司