小y的质数(转化,容斥)
发布日期:2021-06-30 10:27:26
浏览次数:2
分类:技术文章
本文共 727 字,大约阅读时间需要 2 分钟。
所有用到的数在 [ L , R ] [L,R] [L,R]范围内的前提下
求出有多少 y y y满足 g c d ( y − k , y + k ) gcd(y-k,y+k) gcd(y−k,y+k)
看上去非常不好做,实际上可以转化一下
找 g c d ( y , y + 2 k ) = = 1 gcd(y,y+2k)==1 gcd(y,y+2k)==1的数目
当然此时 L < = y < = R − 2 k L<=y<=R-2k L<=y<=R−2k
就是求 g c d ( y , 2 k ) = = 1 gcd(y,2k)==1 gcd(y,2k)==1的数量
似乎仍然不是很好求,但是,但是可以容斥!!!
分解 2 k 2k 2k的质因子,枚举相同的质因子是哪些,根据质因子奇偶个数来判断是加还是减
注意特判 R − 2 k < L R-2k<L R−2k<L直接输出零
L = = 0 L==0 L==0时也需要判断,因为 L − 1 L-1 L−1是 − 1 -1 −1,会影响答案
#includeusing namespace std;#define int long longint L,R,k,my[100],ans;void fz(int x){ for(int i=2;i*i<=k;i++) { if( x%i==0 ) my[++my[0]] = i; while( x%i==0 ) x/=i; } if( x!=1 ) my[++my[0]] = x;}signed main(){ cin >> L >> R >> k; k*=2; R-=k; fz(k); if( R
转载地址:https://issue-is-vegetable.blog.csdn.net/article/details/112808849 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月23日 21时56分29秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
mysql 中锁升级问题
2019-04-30
mysql5.7使用GTID特性搭建主从复制
2019-04-30
hive 数据倾斜问题汇总
2019-04-30
和面试官谈一谈高并发场景下锁的使用技巧
2019-04-30
六、DDE服务器函数
2019-04-30
八、国际化函数
2019-04-30
九、库管理函数
2019-04-30
十、数值计算函数
2019-04-30
十一、打印和打印机设置函数
2019-04-30
十二、注册表操作函数
2019-04-30
C++的除法需要留意的几点情况
2019-04-30
C++打印三角形、四边形
2019-04-30
C++程序的基本组成简介
2019-04-30
JavaScript变量及访问方式介绍
2019-04-30
centos7 hbase1.4.13+hadoop2.7.1+单机环境搭建
2019-04-30
十四、系统与环境函数
2019-04-30
十五、定时函数
2019-04-30
十三、字符串操作函数
2019-04-30
十八、垃圾收集函数
2019-04-30
十七、类定义查找函数
2019-04-30