洛谷P2261 CQOI2007 餘數求和

2021-10-04 16:18:00 字數 791 閱讀 8892

傳送門

題目背景

數學題,無背景

題目描述

給出正整數 n,k計算k取模1~n的和

數學好題,**短小精悍

暴力能60,

之後考慮優化。

如果你學過一點點數學,那麼你就知道

k%i=k-[k/i]*i;

而且不難發現,[k/i]必定是連續的,且在一定的i的範圍內這個值是不變的,類似於乙個階梯函式,而我們闊以通過k/[k/i]來算出這個東西的右邊界(為什麼自己用紙算一下就知道了)

然後就用闊以把這個東西分塊了,等差數列求和

乙個數的因子期望是根號這個數

所以這個題的期望複雜度是根號n

1e9輕鬆跑過

上我可愛的**

#include

#include

#include

#include

#include

#define int long long

using

namespace std;

int n,k;

int ans;

inline

intread()

while

(ch>=

'0'&&ch<=

'9')

return x*f;

}main()

else

if(kbreak;}

printf

("%lld"

,ans)

;return0;

}

洛谷 P2261 CQOI2007 餘數求和

前兩天肝了整整兩天的fft,部落格暫咕 今天打算先肝個莫隊,於是複習一下整除分塊 題面 給出n,k 1 n k 1 09 n,k 1 le n,k le 10 9 n,k 1 n,k 109 求 i 1 nkmo di large sum limits k mod i i 1 n kmod i推一波...

洛谷P2261 CQOI2007 餘數求和

給出正整數n和k,計算g n,k k mod 1 k mod 2 k mod 3 k mod n的值,其中k mod i表示k除以i的餘數。例如g 10,5 5 mod 1 5 mod 2 5 mod 3 5 mod 4 5 mod 5 5 mod 10 0 1 2 1 0 5 5 5 5 5 29...

P2261 CQOI2007 餘數求和

數學題,無背景 給出正整數n和k,計算g n,k k mod 1 k mod 2 k mod 3 k mod n的值,其中k mod i表示k除以i的餘數。例如g 10,5 5 mod 1 5 mod 2 5 mod 3 5 mod 4 5 mod 5 5 mod 10 0 1 2 1 0 5 5 ...