[关闭]
@pinkex 2018-10-10T04:51:28.000000Z 字数 1065 阅读 481


交换求和符号得

平移d得

将取整符号拆开得


拆开求和,第一项为(设


注意到t的取值有根号级别种,用除法分块即可。

第二项为

内部的和式可以O(1)计算,但还不够。化简一下O(1)计算的式子得到

经过平移d,再设
得到


注意到t再d大于等于根号n时值变成0,所以枚举d到根号n就好了。

第三项为




注意到前一项可以用除法分块,是根号n的复杂度,后一项d也枚举到根号就可以了。

所以总的复杂度是根号的。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注