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

大潮建设集团有限公司 网站网站关键词优化服务

大潮建设集团有限公司 网站,网站关键词优化服务,wordpress分类图片尺寸,阿狸网站建设目录 题目算法标签: 并查集, 反向考虑, 枚举思路代码 题目 P1197 [JSOI2008] 星球大战 算法标签: 并查集, 反向考虑, 枚举 思路 按题目描述, 给定一个图, 每次删除一个点, 求联通块的数量, 直接求的算法时间复杂度太高, 无法通过, 考虑反向添加点, 假设当前图 G G G是已经全…

题目

P1197 [JSOI2008] 星球大战

算法标签: 并查集, 反向考虑, 枚举

思路

按题目描述, 给定一个图, 每次删除一个点, 求联通块的数量, 直接求的算法时间复杂度太高, 无法通过, 考虑反向添加点, 假设当前图 G G G是已经全部删除目标点的剩余图, 假设当前联通块的数量是 k k k, 然后倒序添加点, 如果合并两个新的连通块, 那么 k − 1 k-1 k1, 因为是从后向前添加点, 因此记录答案也是逆序记录的, 最后再逆序输出即可

代码

#include <iostream>
#include <algorithm>
#include <cstring>
#include <vector>using namespace std;const int N = 4e5 + 10, M = N;int n, m, k;
int head[N], ed[M], ne[M], idx;
int del[N];
int fa[N];
bool vis[N] = {0};
vector<int> ans;void add(int u, int v) {ed[idx] = v, ne[idx] = head[u], head[u] = idx++;
}int find(int u) {if (u != fa[u]) fa[u] = find(fa[u]);return fa[u];
}void merge(int u, int v) {int fa1 = find(u), fa2 = find(v);if (fa1 != fa2) fa[fa2] = fa1;
}int main() {ios::sync_with_stdio(0);cin.tie(0), cout.tie(0);memset(head, -1, sizeof head);cin >> n >> m;for (int i = 0; i < m; ++i) {int u, v;cin >> u >> v;add(u, v), add(v, u);}for (int i = 0; i <= n; ++i) fa[i] = i;cin >> k;for (int i = 0; i < k; ++i) {cin >> del[i];vis[del[i]] = true;}// 计算初始连通性int cnt = n - k;for (int i = 0; i < idx; ++i) {int u = ed[i];int v = ed[i ^ 1];if (!vis[u] && !vis[v] && find(u) != find(v)) {merge(u, v);cnt--;}}ans.push_back(cnt);for (int i = k - 1; i >= 0; --i) {int u = del[i];vis[u] = false;cnt++;for (int j = head[u]; ~j; j = ne[j]) {int v = ed[j];if (!vis[v] && find(u) != find(v)) {cnt--;merge(u, v);}}ans.push_back(cnt);}reverse(ans.begin(), ans.end());for (int val : ans) cout << val << "\n";return 0;
}
http://www.yayakq.cn/news/466632/

相关文章:

  • 阿里巴巴网站图片怎么做西八里庄网站建设
  • 网站开发技术框架虚拟主机管理系统
  • 十大网站网站维护开发合同
  • 百度做网站推广多少钱网站开发的工作内容
  • 个人网站必须备案吗wordpress wpadmin修改
  • 网站图片地址怎么做的成都网站建设多少费用
  • 好的php网站如何建设销售型企业网站
  • python做网站是不是特别慢关键词优化公司排行
  • 个人求职网站源代码南阳网站网站建设
  • 网站建设有哪三部专业网站的建设设行吗
  • 微商城网站建设多少钱黄石网站制作
  • 贵阳企业网站设计制作wordpress站点搬家
  • 石家庄房地产网站建设好的网站建设案例
  • 建设企业网站注意事项it外包公司招聘
  • 网站设计与开发范本电子商务营销渠道有哪些
  • 学网站建设能赚钱吗权威发布意思
  • 做外贸的零售网站排名函数
  • 中英双语网站制作网页原型的目的
  • 如何用域名建网站怎么在vk网站上做推广
  • 建站工作室开创者wordpress素材
  • 模板网站建设流程图厦门seo外包公司
  • 做网站用什么cms 知乎丰台区网站建设公司
  • 建立一个网站需要哪些步骤茂名网站建设方案书
  • 北京住房城乡建设厅网站首页wordpress 两栏
  • 佛山网站优化有哪些欧米茄表官方官网
  • 南京越城建设集团有限公司网站外贸网站有哪些?
  • 拿别的公司名字做网站福州seo建站
  • 带购物车的网站模板南宁建企业网站
  • 贵阳做网站做得好的广西柳州网站建设小程序公司
  • 网站常用特效建站平台费用