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

P3455 [POI 2007] ZAP-Queries

P3455 [POI 2007] ZAP-Queries

大意

给出 \(a,b,d\),求满足 \(1 \leq x \leq a\)\(1 \leq y \leq b\),且 \(\gcd(x,y)=d\) 的二元组 \((x,y)\) 的数量。

思路

也就是说,我们要统计的答案是 \(\sum_{x = 1} ^ a \sum_{y = 1} ^ b [\gcd(x, y) = d]\)

我们考虑莫比乌斯反演。

我们令 \(x = d \times x', y = d \times y'\),那么原式可化为 \(\sum_{x' = 1} ^ {\lfloor \frac{x}{d} \rfloor} \sum_{y' = 1} ^ {\lfloor \frac{y}{d} \rfloor} [\gcd(x', y') = 1]\),我们再利用恒等式 \([\gcd(x, y) = 1] = \sum_{k | \gcd(x, y)} \mu(k)\) 代入,得到答案为 \(\sum_{x' = 1} ^ {\lfloor \frac{x}{d} \rfloor} \sum_{y' = 1} ^ {\lfloor \frac{y}{d} \rfloor} \sum_{k | \gcd(x, y)} \mu(k)\),接下来,我们再改变一下,先枚举 \(k\),再看那些情况符合的,答案就变为了 \(\sum_{k = 1} ^ {\min(\lfloor \frac{x}{d} \rfloor, \lfloor \frac{y}{d} \rfloor)} \mu(k) \lfloor \frac{x}{d} \rfloor \lfloor \frac{y}{d} \rfloor\)

代码

#include<bits/stdc++.h>
using namespace std;const int MAXN = 50005;
int mu[MAXN], pr[MAXN];
bool vis[MAXN];
int sum[MAXN], tot = 0;void init(int n){mu[1] = 1;for(int i = 2;i <= n;i ++){if(!vis[i]){pr[++ tot] = i;mu[i] = -1;}for(int j = 1;j <= tot && pr[j] * i <= n;j ++){vis[pr[j] * i] = 1;if(i % pr[j] == 0){mu[pr[j] * i] = 0;break;}mu[pr[j] * i] = -mu[i];}}for(int i = 1;i <= n;i ++){sum[i] = sum[i - 1] + mu[i];}
}int solve(){int a, b, d, ans = 0;cin >> a >> b >> d;if(a > b) swap(a, b);a /= d, b /= d;for(int l = 1, r;l <= a;l = r + 1){r = min(a / (a / l), b / (b / l));ans += (sum[r] - sum[l - 1]) * (a / l) * (b / l);}return ans;
}int main(){init(50000);int t; cin >> t;while(t --){cout << solve() << '\n';}return 0;
}
http://www.jsqmd.com/news/405662/

相关文章:

  • 2026想找新型飞行模拟器定做厂家,这些选择技巧别错过,诚信的模拟器制造厂家口碑排行忠军装备层层把关品质优 - 品牌推荐师
  • 2026版祛斑产品什么好?医美亲测5款祛斑护肤品推荐排行 - 资讯焦点
  • 2026年1月半自动钉箱机直销厂家哪家强?优质厂家推荐来袭!半自动钉箱机产品精选实力品牌 - 品牌推荐师
  • 美容院加盟选哪家更稳?2026年连锁品牌长期对比解析 - 资讯焦点
  • 债务协商托管重组公司排名:全国十大正规平台实测报告​ - 代码非世界
  • AtCoder Weekday Contest 0002 Beta题解(AWC 0002 Beta A-E)
  • 一天一个开源项目(第31篇):awesome-openclaw-usecases - OpenClaw 真实用例集合
  • 这次终于选对! 降AIGC网站 千笔·降AI率助手 VS PaperRed,专科生专属!
  • PicoClaw 架构设计,极致轻量・插件化・高可用 AI 智能体
  • 专科生收藏!千笔ai写作,行业天花板级的一键生成论文工具
  • 专科生也能用!倾心之选的一键生成论文工具 —— 千笔·专业学术智能体
  • C++拷贝函数:const与引用的高效实践
  • pocsuitye安装过程,一言难尽
  • 解决债务难题!十大可靠网贷平台协商还款指南!十大可靠网贷平台协商机构名单 - 代码非世界
  • 信用卡逾期自救指南全国十大正规债务重组平台深度测评 - 代码非世界
  • 信用卡逾期别慌!负债人亲测:全国十大正规债务重组平台实操指南 - 代码非世界
  • 省选 2026
  • springboot驾校信息管理系统vue-wfyob
  • OpenAI营利化重组及AI浏览器动态
  • 字符串的一些理论
  • Halcon深度学习系教程
  • [AI提效-28]-2026年AI辅助软件全流程开发工具对比指南
  • 2026四川债务协商机构实测推荐|信用卡逾期不用慌,正规机构助你平稳上岸 - 代码非世界
  • 基于Python的电影推荐系统
  • 驾校训练车违规提醒,压线,超速,实时提醒,辅助教学,输出纠错。
  • dokuwiki jsonRPC教程
  • JavaSE基础-Java字符串转整数与拼接实战指南
  • 【2026最新】Escrcpy下载安装全攻略:大屏操控安卓手机必备工具 - xiema
  • 基于Python+Web的公务员信息查询系统
  • 信用卡逾期别慌!10家正规机构助你轻松化解债务压力 - 代码非世界