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

76.Acwing基础课第890题-简单-能被整除的数

76.Acwing基础课第890题-简单-能被整除的数

题目描述

\(给定一个整数 n 和 m 个不同的质数 p_1,p_2,…,p_m\)

\(请你求出 1∼n 中能被 p_1,p_2,…,p_m 中的至少一个数整除的整数有多少个\)

输入格式

\(第一行包含整数 n 和 m\)

\(第二行包含 m 个质数\)

输出格式

\(输出一个整数,表示满足条件的整数的个数\)

数据范围

\(1≤m≤16\),
\(1≤n,p_i≤10^9\)

输入样例:

10 2
2 3

输出样例:

7

代码:

// 包含基础输入输出、算法头文件
#include <iostream>
#include <algorithm>using namespace std;// 定义长整型别名:防止乘法溢出(如多个质数相乘可能超过int范围)
typedef long long LL;// 常量定义:N=20,最多支持20个质数(2^20≈1e6,循环次数可接受)
const int N = 20;int p[N]; // 存储输入的m个质数int main()
{int n, m; // n:范围上限(1~n);m:质数的个数cin >> n >> m;// 输入m个质数,存入p数组for (int i = 0; i < m; i ++ ) cin >> p[i];int res = 0; // 最终结果:1~n中能被至少一个质数整除的数的个数// ========== 核心:二进制枚举所有非空子集(容斥原理) ==========// 1<<m 表示2^m(所有子集的数量),i从1开始枚举非空子集for (int i = 1; i < 1 << m; i ++ ){int t = 1; // 存储当前子集所有质数的乘积int s = 0; // 存储当前子集的元素个数(质数个数)// 遍历当前子集的每一位,判断是否包含第j个质数for (int j = 0; j < m; j ++ )// i >> j & 1:判断i的第j位是否为1(包含第j个质数)if (i >> j & 1){// 防溢出:如果当前乘积*t超过n,后续n/t=0,无需计算if ((LL)t * p[j] > n){t = -1; // 标记溢出,跳出循环break;}t *= p[j]; // 累乘当前质数s ++ ;     // 子集大小+1}// 如果乘积未溢出(有效子集)if (t != -1){// 容斥原理:奇加偶减// 子集大小为奇数:加上n/t(1~n中能被t整除的数的个数)// 子集大小为偶数:减去n/tif (s % 2) res += n / t;else res -= n / t;}}// 输出结果cout << res << endl;return 0;
}
http://www.jsqmd.com/news/613953/

相关文章:

  • CACC 协同式自适应巡航模型(仿真软件版本:Carsim2016,Matlab2018b及以上)
  • 5个实用技巧:AI图像处理与隐私保护工具DeepMosaics完全指南
  • 2026年甘肃门禁道闸公司优选 智能化适配 高效售后 贴合本地气候场景 - 深度智识库
  • 局域网内共享远程专用网络
  • 终极免费CAJ转PDF工具:caj2pdf一站式解决方案
  • IDM激活脚本技术指南:从原理到实践的完整解决方案
  • 2026洛阳江浙菜宴请选型指南:3个硬指标避坑清单 - 精选优质企业推荐榜
  • 攻克ControlNet图像异常:3大维度优化实现90%质量提升
  • 通义千问2.5-7B实战部署:从下载到对话,完整步骤详解
  • 2026年腾讯企业邮箱怎么注册申请:从开通到高效使用的完整指南 - 品牌2025
  • 从单体到群体:多 Agent 系统的涌现智能
  • 解锁医疗智能:NLP如何重塑电子病历分析与临床决策
  • 追忆2002:拖把更名器——一款跨越20年的经典文件重命名工具评测
  • 2026知识付费SaaS真实评测:跑遍6家平台后,为什么说创客匠人是综合首选?
  • Day16——什么是面向对象
  • Manim与3Blue1Brown:如何用Python制作专业数学动画
  • 2026年4月可靠的橡胶垫片厂商找哪家,硅胶垫片/铁氟龙垫片/橡胶垫片,橡胶垫片生产厂家选哪家 - 品牌推荐师
  • zabbix配置snmptrap告警自动恢复简单应用
  • Fluent Meshing 2D网格划分实战:从几何导入到高质量网格生成
  • AI Agent Harness Engineering 的调试与测试方法论
  • Entity Framework Core 10向量搜索深度解析(从LINQ.Queryable到HNSW索引映射的全链路拆解)
  • Qwen3-14B私有部署镜像:利用MATLAB进行大模型输出数据分析与可视化
  • 2026阿里云企业邮箱服务商横向测评:核心功能与版本差异深度解析 - 品牌2025
  • 2026年山东汽车4S店抖音推广选购指南:3招教你省钱挑对靠谱服务 - 精选优质企业推荐榜
  • 行业首创!浦林成山发布经销商月度战报,开创渠道协同新范式
  • 经典电路:防抖防静电按键、信号输入保护、达林顿阵列驱动电路、运放电流采样电路、MOS管高侧开关电路、电源输入保护电路
  • 通义千问3-Reranker-0.6B实操手册:日志结构化输出+ELK日志分析集成
  • PHP 8.9 JIT调试黄金组合:GDB+VLD+phpspy三工具联动,10分钟复现并修复动态类型推导崩溃
  • 浪琴官方售后服务中心网点考察报告(2026年4月最新维修中心电话) - 亨得利官方服务中心
  • 官方公告|2026年4月万国维修网点升级 新址及统一热线启用 - 速递信息