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

欧拉筛+并查集

集合 - 洛谷

std::vector<int> minp, primes,primes1;void sieve(int n,int p) {minp.assign(n + 1, 0);primes.clear();for (int i = 2; i <= n; i++) {if (minp[i] == 0) {minp[i] = i;primes.push_back(i);}for (auto p : primes) {if (i * p > n) {break;}minp[i * p] = p;if (p == minp[i]) {break;}}}
}
struct DSU {std::vector<int>f, siz;DSU(){}DSU(int n) {init(n);}void init(int n) {f.resize(n);std::iota(f.begin(), f.end(), 0);siz.assign(n, 1);}int find(int x) {while (x != f[x]) {x = f[x] = f[f[x]];}return x;}bool same(int x, int y) {return find(x) == find(y);}bool merge(int x, int y) {x = find(x);y = find(y);if (x == y)return false;siz[x] += siz[y];f[y] = x;return true;}int size(int x) {return siz[find(x)];}
};
int main() {std::ios::sync_with_stdio(false), std::cin.tie(0), std::cout.tie(0);int a, b, p;std::cin >> a >> b >> p;DSU dsu(b+1);sieve(b, p);for (int i = 0; i < primes.size(); i++) {if (primes[i] >= p)primes1.push_back(primes[i]);}for (int i = 0; i < primes1.size(); i++) {int c = 0;while (c * primes1[i] < a)c++;while (primes1[i] * (c + 1) <= b) {dsu.merge(primes1[i] * c, primes1[i] * (c + 1));c++;}}int ans = 0;for (int i = a; i <= b; i++) {if (i == dsu.find(i))ans++;}std::cout << ans << '\n';return 0;
}

http://www.lryc.cn/news/323883.html

相关文章:

  • 《桥接模式(极简c++)》
  • jconsole的使用
  • JavaScript详细教程
  • Hive自定义GenericUDF函数
  • 伊理威科技:抖音开网店新手刚做选啥品
  • 【爬虫】专栏文章索引
  • 【Linux】Linux开发工具-vim / 编译器-gcc/g++ / 调试器-gdb / git操作 / 项目自动化构建工具-make/Makefile
  • 解决VM重新打开后找不到共享文件夹的问题
  • uni app 空挡接龙
  • oracle表备份及还原
  • 牛客小白月赛89补题1(ABCD)(偏难)
  • 内存条@电脑支持的最大内存@升级内存硬件
  • 如何了解AI基础概念
  • Apache James数据库存储用户信息的密码加密问题
  • 大数据分布式事务的深入理解?
  • LeetCode hot100-17
  • java网络原理(二)------TCP确认应答和超时重传
  • 机器学习:智能时代的核心引擎
  • Docker-Image
  • YOLOv8 如何实现多主干特征融合方式 | GhostNet+ShuffleNet / SwinTransformer+ShuffleNet
  • 工作需求ElementUi组件的使用
  • 自动驾驶轨迹规划之时空语义走廊(一)
  • [环境配置].ssh文件夹权限修改方法
  • LeetCode刷题【树状数组、并查集、二叉树】
  • 使用POI以OLE对象的形式向excel中插入附件(pdf为例)
  • Unity构建详解(2)——SBP的初始设置和脚本编译
  • Matlab使用教程(持续更新)
  • 管理能力学习笔记一:角色转身
  • Redis面试题 概要
  • 原型,模板,策略,适配器模式