CF476D Dreamoon and Sets 题解

一道思维题,但是可以手玩。

首先发现一个规律,那就是在我们输出的所有四元组 (ai,bi,ci,di) 中,对所有数除以 k 之后得到的四元组 (aik,bik,cik,dik) 中的数两两互质。

这个的大致证明就是假设有两个数 aik,bik 不互质,那么原数字 ai,bi 的最小公倍数肯定是 pk,pN+,与题目不符,证完了。

接下来我的做法是大眼观察样例,能简化成如下形式:

1 2 3 5

1 2 3 11
7 9 5 8

发现如果将样例 2 中第一行 11 和第二行 5 交换以下,就跟样例 1 一样了,于是得到如下结果:

1 2 3 5
7 8 9 11(排了序)

emm 这样就能够看出大致规律了吧,果断猜一手四元组是形如 (i1,i,i+1,i+3) 之类的东西,其中 i 是偶数并且为了保证没有重复数字那么 i=2+6p,pN

然后考虑去证明这个结论是对的,首先答案最小很显然,因为我们已经将数尽可能压得小了,容易证明将其中一个小的没有被选上的数替代最大数会导致答案错误,关键是证明 (i1,i,i+1,i+3) 两两互质,首先因为 i 是个偶数所以 gcd(i1,i)=gcd(i+1,i)=1

然后证明 gcd(i1,i+1)=1 的话也很简单,首先 i1,i+1 都是奇数所以其 gcd 的质因数最小也要是 3,但是这两个数相差 2 所以不可能为 3,证完了。gcd(i+1,i+3)=1 的证明方式是类似的。

接下来是 gcd(i,i+3)=1,首先因为 i,i+3 奇偶性不同所以 gcd 无质因数 2,其次是因为 i=2+6p 不能被 3 整除所以 i,i+3 无质因数 3 所以证完了。

最后是 gcd(i1,i+3)=1,首先还是无质因数 2,然后 i1=1+6p,i+3=5+6p,同样没有共同质因数 3,证完了。

综上就是 n 个四元组 (i1,i,i+1,i+3),i=2+6p,pN,其中第一个 i 是 2。

代码过于简单不给了,记得最后乘上 k

posted @   Plozia  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示