关于此题[AGC018A] Getting Difference 裴蜀定理的一些总结

传送门

  • 题目大意

给定一个序列和k,每次可以选定序列中两个数,将这两个数的差的绝对值加入序列中,问k能否出现在序列中

  • 思路

问的其实就是k能否被该序列中这n个数线性表示,问题是如何实现。

裴蜀定理:对于两个整数a, b ,存在x,y使得ax+by=gcd(a,b),且gcd(a,b)为此线性组合能表示的最小值

而此定理推广到n个数同样适用,即:

a1x1+a2x2+...+anxn=gcd(a1,a2,...,an)

于是我们就知道,k如果能出现在新序列中,即能被原序列线性表示,那么它一定是gcd(a1,a2,...,an)的倍数。

于是问一个数能否被n个数线性表示问题可以在O(n)时间内解决

posted @   孤枕  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
山不在高,有仙则名。水不在深,有龙则灵。
点击右上角即可分享
微信分享提示