博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【BZOJ2045】双亲数 莫比乌斯反演
阅读量:5459 次
发布时间:2019-06-15

本文共 799 字,大约阅读时间需要 2 分钟。

【BZOJ2045】双亲数

Description

小D是一名数学爱好者,他对数字的着迷到了疯狂的程度。 我们以d = gcd(a, b)表示a、b的最大公约数,小D执著的认为,这样亲密的关系足可以用双亲来描述,此时,我们称有序数对(a, b)为d的双亲数。 与正常双亲不太相同的是,对于同一个d,他的双亲太多了 >_< 比如,(4, 6), (6, 4), (2, 100)都是2的双亲数。 于是一个这样的问题摆在眼前,对于0 < a <= A, 0 < b <= B,有多少有序数对(a, b)是d的双亲数?

Input

输入文件只有一行,三个正整数A、B、d (d <= A, B),意义如题所示。

Output

输出一行一个整数,给出满足条件的双亲数的个数。

Sample Input

5 5 2

Sample Output

3
【样例解释】
满足条件的三对双亲数为(2, 2) (2, 4) (4, 2)

HINT

对于100%的数据满足0 < A, B < 10^ 6

题解

总之就是一旦看到[...=1]就往反演上想就好了

#include 
#include
#include
using namespace std;const int maxn=1000010;int n,m,d,num;int pri[maxn],mu[maxn],sm[maxn];bool np[maxn];typedef long long ll;ll ans;int main(){ scanf("%d%d%d",&n,&m,&d),n/=d,m/=d; if(n

转载于:https://www.cnblogs.com/CQzhangyu/p/6999154.html

你可能感兴趣的文章
JavaWeb基础知识第三部分
查看>>
java并发编程系列一、多线程
查看>>
parseInt的源码阅读
查看>>
不定期更新的毒鸡汤
查看>>
OpenCV数字图像处理(1) 总记
查看>>
接口和类
查看>>
jfarme
查看>>
学习中的小笔记
查看>>
test
查看>>
LVS 负载均衡 keepalive
查看>>
The eleven Day
查看>>
HTTP 无法注册URL 进程不具有命名空间的访问权限
查看>>
spring 基于multipart 文件上传
查看>>
循环冗余校验(CRC)算法入门引导
查看>>
Swift继承的用法
查看>>
【[六省联考2017]组合数问题】
查看>>
数据结构与算法学习 第1季02 链表的基本功能 C++实现
查看>>
Oracle Listener
查看>>
java String spilt 问题
查看>>
【P3056】【USACO12NOV】笨牛Clumsy Cows
查看>>