爆标做法(by rui_er)
查看原帖
爆标做法(by rui_er)
365021
masterhuang楼主2024/3/9 19:56

https://www.luogu.com/article/vmzsatr0

直接就 O(n2/3)O(n^{2/3}) 了

打表搜OEIS得:https://oeis.org/search?q=1+4+7+13+16+25+28+38+44+53&language=english&go=Search

注意到文字:

a(n) = Sum_{k=1..n} A000005(k)*floor(n/k). - Benoit Cloitre, Apr 19 2007
To compute a(n) for huge n (see A180365) in sublinear use a(n) = 3*Sum_{i=1..n3} A006218(n/i) - Sum_{j=1..n3} floor(n/(i*j)) + n3^3, where n3 = floor(n^(1/3)). - Andrew Lelechenko, Apr 15 2011

按照这里做应该也是 O(n2/3)O(n^{2/3}),不过常数原大于上面做法,略小于官方题解。

2024/3/9 19:56
加载中...