1. 程式人生 > >[CQOI2007]余數求和

[CQOI2007]余數求和

span ans com int blog img CQ amp min

技術分享圖片

【代碼】

#include<bits/stdc++.h>

#define LL long long

using namespace std;


int main() {
    LL n, k, t, ans;
    #define LL long long
    scanf("%lld%lld", &n, &k);
    ans = (LL) n * k; 
    for(LL l = 1,r; l <= n;l = r + 1) {
        r = (t = k / l) ? min(k / t, n) : n;
        ans = (ans - (r - l + 1
) * t * (l + r) / 2); } printf("%lld\n", ans); return 0; }

[CQOI2007]余數求和