餘數之和sum
time limit:5000ms
memory limit:165888kb
64bit io format:%lld & %llu
submit
status
description
給出正整數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
input
輸入僅一行,包含兩個整數n, k。
output
輸出僅一行,即j(n, k)。
sample input
5 3
sample output
7
hint
50%的資料滿足:1<=n, k<=1000 100%的資料滿足:1<=n ,k<=10^9
source
cqoi2007
意解: 暈..........打表找規律,加暴力對拍,終於a了,打完錶後會發現其實解的集合是分塊的.並且是形成等差數列;
ac**:
#include #include using namespace std;
typedef long long ll;
int main()
len = now - r + 1;
r = l + (len - 1) * (t - 1);
if(now > n)
ans2 += (r + l) * len / 2;
now = m / t;
if(!now) break;
l = m % now;
}for(int i = min(now,n); i >= 2; i--) //提前跳出來的數有可能大於n;
ans2 += m % i;
cout<}
}
2017 3 15 餘數之和sum 失敗總結
數論題還是不會 主要是實在搞不清楚乙個數和乙個連續遞增的模數有什麼關係 唯一能感覺到的是倍數差,但效率不如直接求,感覺這種題一般都和質數有關了 好吧 和質數無關 竟然這麼簡單 還真是倍數差,但是是倍數差內部的規律,即除與模的規律 我們可以利用餘數和除法的關係以及 除法的單調性 轉化 答案 n k i...
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 餘數之和sum 數論
給出正整數n和k,計算j n,k k mod 1 k mod 2 k mod 3 k mod n的值,其中k mod i表示k除以i的餘數。sum n k i sum n k lfloor k i rfloor i n k sum n lfloor k i rfloor i lfloor k i r...