【题意】
求
(题意已经经过简化)
\(n \le 10^{11}\)
【分析】
这里考虑两个整除分块嵌套的时间复杂度。
等于
有结论:\(1^k +2^k + 3^k +... + n^k\)。
当 \(k\) 是正整数的时候,我们知道他是一个 \(k + 1\) 次多项式。猜测它对正实数都成立。
当 \(k = -1\) 的时候是一个 \(\log n\)(不是 \(n \log n\),那个是分子是 \(n\) 的)的级别。
其完整结论为,当 \(k > -1\) 的时候满足 \(O(n^{k + 1})\)。当 \(k = -1\) 的时候满足 \(O(\ln n)\)。当 \(k < -1\) 的时候满足 \(O(1)\)。
因此这个需要计算的复杂度可以这样化简:
好的。但是这样还是过不去的。因为除法的代价是大的。因此如下有两个优化可以把除法的代价尽量降低一些。
标签:log,Poland,Ucup,时候,复杂度,题意 From: https://www.cnblogs.com/Zeardoe/p/17113870.html