当前位置:网站首页>HDU 4135:Co-prime (容斥原理)
HDU 4135:Co-prime (容斥原理)
2022-08-10 11:08:00 【51CTO】
Co-prime
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 4289 Accepted Submission(s): 1698
Problem Description
Given a number N, you are asked to count the number of integers between A and B inclusive which are relatively prime to N.
Two integers are said to be co-prime or relatively prime if they have no common positive divisors other than 1 or, equivalently, if their greatest common divisor is 1. The number 1 is relatively prime to every integer.
Input
The first line on input contains T (0 < T <= 100) the number of test cases, each of the next T lines contains three integers A, B, N where (1 <= A <= B <= 10 15) and (1 <=N <= 10 9).
Output
For each test case, print the number of integers between A and B inclusive which are relatively prime to N. Follow the output format below.
Sample Input
Sample Output
思路:通常我们求1-n中与n互质的数的个数都是用欧拉函数! 但如果n比较大或者是求1~m中与n互质的数的个数等等问题,要想时间效率高的话还是用容斥原理!
容斥:先对n分解质因数,分别记录每个质因数, 那么所求区间内与某个质因数不互质的个数就是n / r(i),假设r(i)是r的某个质因子 假设只有三个质因子, 总的不互质的个数应该为p1+p2+p3-p1*p2-p1*p3-p2*p3+p1*p2*p3, 及容斥原理,可以转向百度百科查看相关内容 pi代表n/r(i),即与某个质因子不互质的数的个数 ,当有更多个质因子的时候, 可以用状态压缩解决,二进制位上是1表示这个质因子被取进去了。 如果有奇数个1,就相加,反之则相减。
AC代码:
边栏推荐
- 力扣练习——61 根据字符出现频率排序
- 基于UiAutomator2+PageObject模式开展APP自动化测试实战
- HDU 1520 Anniversary party (tree dp)
- 程序员追求技术夯实基础学习路线建议
- 负载均衡原理分析与源码解读
- Centos7 environment uses Mysql offline installation package to install Mysql5.7
- LeetCode_152_乘积最大子数组
- [Brave food, not afraid to write the linked list] The problem of the penultimate node of the linked list
- 力扣练习——62 有效的数独
- POJ 1026 Cipher (Permutation Groups)
猜你喜欢

Nocalhost - Making development more efficient in the cloud-native era

1-IMU参数解析以及选择

C#实战:基于ItextSharp技术标签生成小工具

实现内网穿透的最佳解决方案(无实名认证,完全免费)

3款不同类型的自媒体免费工具,有效提高创作、运营效率

【勇敢饭饭,不怕刷题之链表】链表倒数节点问题

Memory problems difficult to locate, it is because you do not use ASAN

Intel pushes 20220809 CPU microcode update to patch Intel-SA-00657 security vulnerability

怎么加入自媒体,了解这5种变现模式,让账号快速变现
![[Brave food, not afraid to write the linked list] The problem of the penultimate node of the linked list](/img/87/7ac0307de54f2defe8f72c554745cd.png)
[Brave food, not afraid to write the linked list] The problem of the penultimate node of the linked list
随机推荐
老板加薪!看我做的WPF Loading!!!
电脑怎么设置屏幕息屏时间(日常使用分享)
Centos7 environment uses Mysql offline installation package to install Mysql5.7
力扣练习——64 最长和谐子序列
AUTOCAD - reducing spline curve control points, the advanced CAD practice (3)
Pycharm终端出现PS问题、conda或activate不是内部命令问题..
越折腾越好用的 3 款开源 APP
[Brave food, not afraid of the linked list of brushing questions] Merging of ordered linked lists
Buckle Exercise - 61 Sort by frequency of characters
杭电多校-Loop-(不确定性贪心+线段树)
软件架构简介
第2章-矩阵及其运算-矩阵运算(2)
Memory problems difficult to locate, it is because you do not use ASAN
StoneDB Document Bug Hunting Season 1
微信小程序,全局变量一个地方改变了其他地方的状态也跟着改变。
模块九 - 设计电商秒杀系统
实现内网穿透的最佳解决方案(无实名认证,完全免费)
POJ 3101 Astronomy (数学)
ENVI 5.3软件安装包和安装教程
Intel pushes 20220809 CPU microcode update to patch Intel-SA-00657 security vulnerability