关于本题
查看原帖
关于本题
172370
fzj2007楼主2020/9/16 21:06

RT,求教,如何处理值域?(炸ull了...)

核心代码部分:

#define ll unsigned long long
ll T,n; 
ll solve(ll x){
	ll ans=0,la=0;
	if(x<=1) return x;
	for(ll l=1,r;l<=x;l=r+1)
		r=x/(x/l),ans+=(r-l+1)*(x/l)*(l+r)/2;
	return ans;
}
int main(int argc, char const *argv[]){
    std::ios::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    read(T);
    while(T--) read(n),put('\n',solve(n)-(n*(n+1)/2));
    return 0;
}

在线等,求教

2020/9/16 21:06
加载中...