![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数论
!Enterprise
这个作者很懒,什么都没留下…
展开
-
容斥定理count GCD
题意:给定一个数组a_1, a_2, .....a_n;且任一项都在[1, m]区间内,要求构造一个数组b,使得对于任意i有gcd(b_1, b_2,.....b_i) = a[i]成立;且任意b_i也在[1, m]区间内。思路:gcd(b_1, b_2,.....b_i) = a[i] 转化为gcd(a[i-1], b[i]) = a[i]. 可以看出a[i-1]一定要整除a[i],否则无解,在得到。原创 2023-01-28 14:23:24 · 116 阅读 · 0 评论 -
a+b为定值n,最小化a+b的最小公倍数
显然,由a+b = n得出a*b>=n-1,设x = gcd(a, b), c*x + d*x = n, 得到 c+d=n/x,c*d>=n/x-1又因为lcm(a, b) = c*d*x, 所以得到lcm(a, b) = c*d*x >= n-x。显然让lcm最小就要使x最大,即a 和 b的最大公约数最大化。给定定值n,使得a+b=n, ans = lcm(a, b), 求ans的最小值。原创 2023-01-23 05:09:31 · 258 阅读 · 0 评论