洛谷P2257 YY的GCD
今日份是数论
大概是。。从小学奥数到渐渐毒瘤
那就简单列一下目录【大雾
同余 质数密度 唯一分解定理 互质
完全剩余系 简化剩余系 欧拉函数 逆元 斐蜀定理
阶(及其性质) 欧拉定理 费马小定理 原根 调和级数
欧拉函数推广到积性函数 完全积性函数
莫比乌斯函数 莫比乌斯反演
狄利克雷卷积 杜教筛 Lucas定理
回到这道题
题意:
给出n, m ∈ [1, 1e7] ,求有多少对(x, y)
满足x ∈ [1, n], y ∈ [1, m] 且 gcd(x, y) 为质数
字丑【痛心


附上代码
#include <cstdio>
#include <algorithm>
using namespace std;
const int N = 1e7 + ; int prm[N], mu[N], ps;
bool ism[N];
long long res[N], g[N]; inline void calc(int n){
mu[] = ;
for(int i = ; i <= n; i++){
if(!ism[i]) {prm[++ps] = i; mu[i] = -;}
for(int j = ; j <= ps && prm[j] * i <= n; j++){
ism[prm[j] * i] = ;
if(!(i % prm[j])) break;
mu[prm[j] * i] = -mu[i];
}
}
for(int i = ; i <= ps; i++)
for(int j = ; j * prm[i] <= n; j++)
g[j * prm[i]] += mu[j];
for(int i = ; i <= n; i++)
res[i] = res[i - ] + (long long) g[i];
} int main(){
int T; scanf("%d", &T);
long long ans;
int n, m;
calc(1e7);
while(T--){
scanf("%d%d", &n, &m);
if(n > m) swap(n, m);
ans = ;
int i = , j;
while(i <= n){
j = min(n / (n / i), m / (m / i));
ans += (long long)(n / i) * (m / i) * (res[j] - res[i - ]);
i = j + ;
}
printf("%lld\n", ans);
}
return ;
}
洛谷P2257 YY的GCD的更多相关文章
- 洛谷 P2257 YY的GCD
洛谷 P2257 YY的GCD \(solution:\) 这道题完全跟[POI2007]ZAP-Queries (莫比乌斯反演+整除分块) 用的一个套路. 我们可以列出答案就是要我们求: \(ans ...
- 洛谷 - P2257 - YY的GCD - 莫比乌斯反演 - 整除分块
https://www.luogu.org/problemnew/show/P2257 求 \(n,m\) 中 \(gcd(i,j)==p\) 的数对的个数 求 $\sum\limits_p \sum ...
- 洛谷 P2257 YY的GCD 题解
原题链接 庆祝: 数论紫题 \(T4\) 达成! 莫比乌斯 \(T1\) 达成! yy 真是个 神犇 前记 之前我觉得: 推式子,直接欧拉筛,筛出个 \(\phi\),然后乱推 \(\gcd\) 就行 ...
- 洛谷 P2257 - YY的GCD(莫比乌斯反演+整除分块)
题面传送门 题意: 求满足 \(1 \leq x \leq n\),\(1 \leq y \leq m\),\(\gcd(x,y)\) 为质数的数对 \((x,y)\) 的个数. \(T\) 组询问. ...
- 洛谷P2257 YY的GCD 莫比乌斯反演
原题链接 差不多算自己推出来的第一道题QwQ 题目大意 \(T\)组询问,每次问你\(1\leqslant x\leqslant N\),\(1\leqslant y\leqslant M\)中有多少 ...
- 洛谷P2257 YY的GCD(莫比乌斯反演)
传送门 原来……莫比乌斯反演是这么用的啊……(虽然仍然不是很明白) 首先,题目所求如下$$\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)=prim]$$ 我们设$f(d)$表示$g ...
- 解题:洛谷2257 YY的GCD
题面 初见莫比乌斯反演 有一个套路是关于GCD的反演经常设$f(d)=\sum_{gcd(i,j)==d},g(d)=\sum_{d|gcd(i,j)}$,然后推推推 $\sum\limits_{i= ...
- [洛谷2257]YY的GCD 题解
整理题目转化为数学语言 题目要我们求: \[\sum_{i=1}^n\sum_{i=1}^m[gcd(i,j)=p]\] 其中 \[p\in\text{质数集合}\] 这样表示显然不是很好,所以我们需 ...
- 洛谷 2257 - YY的GCD
莫比乌斯反演半模板题 很容易可以得到 \[Ans = \sum\limits_{p \in prime} \sum\limits_{d = 1}^{\min (\left\lfloor\frac{a} ...
随机推荐
- C# Hashtable vs Dictionary 学习笔记
Hashtable 和 Dictionary 存储的都是键值对,我的理解是Dictionary是Hashtable的泛型实现. Hashtable的键和值都是object类型.所以,key和value ...
- web service 框架
WebService简介 Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的.专门的第三方软件或硬件, 就可相互交换数据或集成.依据Web Service规范实施的应用之间, ...
- ORA-00020:maximum number of processes (150) exceeded
异常的含义 超过最大的进程数 我们使用下面的语句可以查看与进程(process)的相关参数: 如上所示,这里的最大进程数是150. 问题可能存在的原因 1.应用程序在使用数据库连接池时,使用完成后没有 ...
- [Oacle][Partition]Partition操作与 Index, Global Index 的关系
[Oacle][Partition]Partition操作与 Index, Global Index 的关系: ■ Regarding the local index and the global i ...
- Intel x86_64 Architecture Background 1
首先讲一下什么是Intel x86,x86是指intel的开发的一种32位指令集,从386开始时代开始的一直沿用至今,是一种cisc指令集.x84_64是x86 CPU开始迈向64位的时候,有2选择: ...
- 2018年高教社杯全国大学生数学建模竞赛C题解题思路
题目 C题 大型百货商场会员画像描绘 在零售行业中,会员价值体现在持续不断地为零售运营商带来稳定的销售额和利润,同时也为零售运营商策略的制定提供数据支持.零售行业会采取各种不同方法来吸引更多的人成 ...
- Jvm远程监控
服务器运行新建文件 : udi.policy grant codebase "file:${java.home}/../lib/tools.jar" { permission ja ...
- 1013 B. And
链接 [http://codeforces.com/contest/1013/problem/B] 题意 给你一个n和x,再给n个数,有一种操作用x&a[i]取代,a[i],问使其中至少两个数 ...
- js实现树形内容展示
1.首先这里有一个demo,里边有封装好的js文件.地址:http://files.cnblogs.com/files/feifeishi/dtree.zip 2.直接上代码 <div styl ...
- 小学四则运算APP 第二阶段冲刺
第一阶段实现最基本的四则运算计算,最原始的所以还没有美化 xml文件 <LinearLayout xmlns:android="http://schemas.android.c ...