Bzoj 1257 [CQOI2007]余数之和 (整除分块)
Bzoj 1257 [CQOI2007]余数之和 (整除分块)
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1257
一道简单题.
题目要求:
\]
\]
\]
后面这一部分可以用整除分块解决.
需要注意的是.\(k\%i(i > k)\) 时,运用整除分块,程序会出错,因为除了\(0\),显然\(i>k\)时,不会对答案造成影响.整除分块的时候只需要枚举到\(min(n,k)\)即可.
还需要一点等差数列的知识.
\(l+(l+1)+(l+2)+(l+3)..r\)
这一部分的和就是\((l + r) /2 * (r - l + 1)\)区间的平均值乘以区间元素个数.
然后就做完了.
时间复杂度:\(O(\sqrt n)\)
CODE
#include <iostream>
#include <cstdio>
#define ll long long
ll ans,n,k;
ll min(ll a,ll b) {return a > b ? b : a;}
ll max(ll a,ll b) {return a > b ? a : b;}
int main() {
scanf("%lld%lld",&n,&k);
ans = n * k;
for(ll l = 1,r;l <= min(k,n);l = r + 1) {
r = min( k / (k / l) , n );
ans -= (k / l) * (r - l + 1) * (r + l) / 2;
}
printf("%lld",ans);
return 0;
}
Bzoj 1257 [CQOI2007]余数之和 (整除分块)的更多相关文章
- bzoj 1257: [CQOI2007]余数之和 (数学+分块)
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 ...
- bzoj 1257 [CQOI2007]余数之和——数论分块
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1257 \( n\%i = n - \left \lfloor n/i \right \rfl ...
- BZOJ 1257: [CQOI2007]余数之和sum
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 3769 Solved: 1734[Submit][St ...
- bzoj 1257: [CQOI2007]余数之和sum 数学 && 枚举
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 1779 Solved: 823[Submit][Sta ...
- BZOJ 1257: [CQOI2007]余数之和sum( 数论 )
n >= k 部分对答案的贡献为 k * (n - k) n < k 部分贡献为 ∑ (k - ⌊k / i⌋ * i) = ∑ , ⌊k / i⌋ 相等的数是连续的一段, 此时这段连 ...
- BZOJ 1257: [CQOI2007]余数之和sum【神奇的做法,思维题】
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 4474 Solved: 2083[Submit][St ...
- BZOJ 1257: [CQOI2007]余数之和
1257: [CQOI2007]余数之和 Time Limit: 5 Sec Memory Limit: 128 MB Description 给出正整数n和k,计算j(n, k)=k mod 1 ...
- [原博客] BZOJ 1257 [CQOI2007] 余数之和
题目链接题意: 给定n,k,求 ∑(k mod i) {1<=i<=n} 其中 n,k<=10^9. 即 k mod 1 + k mod 2 + k mod 3 + … + k mo ...
- bzoj1257: [CQOI2007]余数之和 整除分块
题意:给出正整数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 ...
随机推荐
- 海思3559A QT 5.12移植(带webengine 和 opengl es)
海思SDK版本:Hi3559AV100_SDK_V2.0.1.0 编译器版本:aarch64-himix100-linux-gcc 6.3.0(这个版本有点小问题,使用前需要先清除本地化设置) $ e ...
- Tomcat 连接池调优
性能较好的Tomcat 配置文件内容 <Context> <Resource name="jdbc/pgsql" type="javax.sql.Dat ...
- 企业级应用,如何实现服务化二(dubbo架构)
这是企业级应用,如何实现服务化系列的第二篇.在上一篇:企业级应用,如何实现服务化一(项目架构演化)中,交代了企业级应用架构的演化过程,和服务治理的方案可以选择:dubbo,或者spring cloud ...
- 上传到git
https://blog.csdn.net/Lucky_LXG/article/details/77849212
- Linq 知识总结
一.说明: LINQ,语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相 ...
- elasticsearch 备份和恢复
curl : http://keenwon.com/1393.html During snapshot initialization, information about all previous ...
- Flask (四) 模型进阶
模型进阶 多对多关联 用户收藏电影,一个用户可以收藏多部电影, 一部电影可以被不同的用户收藏, 是一个多对多关系. # 中间表(不是模型) collects = db.Table('collect ...
- 洛谷 P3462 [POI2007]ODW-Weights
题面: https://www.luogu.org/problemnew/show/P3462 https://www.lydsy.com/JudgeOnline/problem.php?id=111 ...
- keil_rtx特点
Keil RTX是一个专为ARM及Cortex M系列处理器开发的无版税的确定的实时操作系统.它允许工程师建立多任务同步并行的程序软件,同时也能帮助使程序代码更加结构化和便于维护. 产品亮点 所有 ...
- 使用express+mongoDB搭建多人博客 学习(3)connect-flash和mongodb,表单注册
1.根目录下新建settings.js,存放数据库配置 module.exports={ cookieSecret:"myblog", db:"blog", h ...