BZOJ 1257餘數之和

2021-08-27 05:22:38 字數 620 閱讀 8416

給出正整數n和k,計算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值

其中k mod i表示k除以i的餘數。

例如j(5, 3)=3 mod 1 + 3 mod 2 + 3 mod 3 + 3 mod 4 + 3 mod 5=0+1+0+3+3=7

輸入僅一行,包含兩個整數n, k。

1<=n ,k<=10^9

輸出僅一行,即j(n, k)。

5 3題解:j(n,k) = ∑k mod i = ∑k - [k/i] * i = n*k-∑[k/i] * i ,1<=i<=n 。當i>k時,[k/i] * i=0。

∴ 只用考慮 i <= k的情況,即:j(n,k) = n * k - ∑[k/i] * i,1<=i<=min(n,k)。顯然 [k/i] * i 是乙個以 [k/i] 為公差的等差數列。

#include #include #include #define ll long long

using namespace std;

int main()

printf("%lld\n", ans);

return 0;

}

bzoj 1257 餘數之和sum 數學

time limit 5 sec memory limit 162 mb submit 3081 solved 1425 submit status discuss 給出正整數n和k,計算j n,k k mod 1 k mod 2 k mod 3 k mod n的值,其中k mod i表示k除以i的...

BZOJ 1257 餘數之和 整除優化

給定正整數n和k,計算 k mod 1 k mod 2 k mod n 的值。1 n,k 1e9 首先我們可以先將式子進行轉換,kmo di k i k i 原式 n k i 1n i k i k mod i k i lfloor k i rfloor 原式 n k sum limits i lfl...

BZOJ1257 餘數之和,整除分塊

給出正整數n和k,計算j n,k k mod 1 k mod 2 k mod 3 k mod n的值 其中k mod i表示k除以i的餘數。例如j 5,3 3 mod 1 3 mod 2 3 mod 3 3 mod 4 3 mod 5 0 1 0 3 3 7 輸入僅一行,包含兩個整數n,k。1 n ...