for(int i=1,last;i<=n;i=last+1){
last=n/(n/i); //该区间的最后一个数
ans+=(last-i+1)*(n/i);
}
整除分块
最新推荐文章于 2022-04-01 22:53:21 发布
for(int i=1,last;i<=n;i=last+1){
last=n/(n/i); //该区间的最后一个数
ans+=(last-i+1)*(n/i);
}