闲话 8.23

闲话 8.23

起因是 Rolling_star 在考古 IMO 时发现了这样一道预选题:

给出序列 {an} 满足:

2n=d|nad

求证:

n|an

我们先做一遍底幂轮换 (Swap the base number with the power wheel):

2d=n|dan

然后再指数降阶(Exponential reduction):

2×d=n|dan

接着进行直角反演(Rotate the formula at right angles before performing calculations

2×d=ωdn×an

显然消去 d

2ω=ann

显然 ω 是角速度,这是我们上文在使用直角反演时所产生的,是 O(ω) 级别的,所以有

2ω=2Θ(logn)=2/lognO()=2/logn(O)=4(O2)logn=4O2logn

这样,我们就得到了 4 molO2logn

O2logn=催化剂ΔlognO2O2logn=B2O2,B20,K8HeΘ(2n/2) C2Ologn

联立可以得到 2/logn=O2/Ologn,两边取对数:

log2loglogn=2logOnlogOlog2logω=(2n)logO

在 word-RAM model 下可以认为 ω=Θ(1),那么可以得到

(2n)logO=O(1)=O(n)

消去括号及 O,就可以得到 2nlog=n,移项即得 22/n=22log=2,解得 n=2,代回 ω 的渐进式:

ω=O(logn)=O(1)

可得:

n|an

Q.E.D

posted @   Melting_Pot  阅读(103)  评论(7编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示