bzoj 1257: [CQOI2007]余数之和sum
2017-08-11 11:29
225 查看
题目大意:
求∑in k mod i题解:
只要一步变形∑nik−⌊ki⌋i直接分块n−−√就可以了。
注意下细节,具体代码。
code:
#include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> #define LL long long using namespace std; LL sum(int l,int r){return (LL)(r-l+1)*(LL)(l+r)/2;} int main() { int n,k;scanf("%d %d",&n,&k); LL ans=0;int pos; for(int i=1;i<=n;i=pos+1) { if(k/i==0) pos=n; else pos=min((k/(k/i)),n); ans+=(LL)k*(pos-i+1)-(LL)(k/i)*sum(i,pos); } printf("%lld",ans); }
相关文章推荐
- _bzoj1257 [CQOI2007]余数之和sum【小技巧】
- BZOJ1257 [CQOI2007]余数之和sum
- BZOJ1257: [CQOI2007]余数之和sum
- bzoj 1257 [CQOI2007]余数之和sum 数学,分段优化
- 【bzoj 1257】[CQOI2007]余数之和sum
- BZOJ 1257 [CQOI2007]余数之和sum | 数论
- 【bzoj1257】[CQOI2007]余数之和sum
- [BZOJ1257][CQOI2007]余数之和sum(数论)
- BZOJ 1257 [CQOI2007]余数之和sum ——Dirichlet积
- 【BZOJ 1257】[CQOI2007]余数之和sum
- 【BZOJ1257】[CQOI2007]余数之和sum【余数求和】【分块】
- [BZOJ1257][CQOI2007]余数之和sum
- bzoj1257 [CQOI2007]余数之和sum(关于反演sqrt(n)复杂度的简单解释)
- BZOJ 1257: [CQOI2007]余数之和sum
- BZOJ 1257: [CQOI2007]余数之和sum
- bzoj 1257: [CQOI2007]余数之和sum
- bzoj 1257: [CQOI2007]余数之和sum 数论
- 【BZOJ 1257】 [CQOI2007]余数之和sum
- BZOJ1257 [CQOI2007] 余数之和sum
- BZOJ 1257 [CQOI2007]余数之和sum 数论