Link
P8255 [NOI Online 2022 入门组] 数学游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
Description
t 组多测。
每组给定 x,z,求最小的满足 x×y×gcd(x,y)=z 的 y。y 不保证有解。
Data Range & Restrictions
- 1≤t≤5×105
- 1≤x≤109
- 1≤z<263
Solution
首先看到这个题,有一个非常明显的东西:
如果有解,肯定 x∣z,那么我们的第一步应该是判断掉 x∤z 的情况。其次考虑令 k=xz,问题转化为满足 y×gcd(x,y)=k 的最小的 y。
其次我们发现:最小的 y 挺迷惑的,可以证明的是 y 至多只能有 1 个解。
令 g=gcd(x,y),设 a=gx,b=gy。进一步转化为 k=b×g2,同时得到 x=a×g, y=b×g, gcd(a,b)=1。
想到这样一个性质:gcd(a,b)=1 ⇒ gcd(r×as,r×bt)=r。
考虑到 x=a×g,k=b×g2。此时我们发现,令 r=g2,s=2,t=1,就能得到 g2=gcd(a2×g2,b×g2)=gcd(x2,k)。我们就能用已知表示出 g 了。
接下来构造 y 即可。具体地:
当 gcd(x2,k) 不为完全平方数时,无解。
同时我们还能发现,y 至多只能有一个解。有没有什么简洁美丽的证明证明此题中 y 至多只能有 1 个解? - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
Time Complexity
我不知道。sqrt复杂度是多少????
Code
//大无语纯数学题。码力考察0,不上代码
不错的题!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】