题意

求 $\sum _{i=1}^n k \ mod \ i$($1\leq n,k\leq 10^9$).

分析

数据范围这么大 $O(n)$ 的复杂度也挺不住啊

根据取模的意义,$k \ mod \ i = k - \left \lfloor \frac{k}{i} \right \rfloor * i$,

因此可以用整除分块,注意分类讨论 $k$ 与 $n$ 的关系。

#include<bits/stdc++.h>
using namespace std; typedef long long ll;
int n, k; ll solve()
{
ll ret = 1LL * n * k;
if(k <= n) //需要分类讨论
{
for(int i = ,j;i <= k;i = j+)
{
j = k / (k / i); ret -= 1LL * (i+j) * (j-i+) / * (k / i);
}
}
else
{
for(int i = ,j;i <= n;i = j+)
{
j = min(k / (k / i), n);
ret -= 1LL * (i+j) * (j-i+) / * (k / i);
}
} return ret;
} int main()
{
scanf("%d%d", &n, &k);
printf("%lld\n", solve());
return ;
}

参考链接:https://zhuanlan.zhihu.com/p/77687419

最新文章

  1. eclipse下查看maven下载的源码中文乱码问题
  2. C#夯实基础系列之字符串
  3. asp.net(C#)利用QRCode生成二维码(续)-在二维码图片中心加Logo或图像
  4. ThoughtWorks持续集成平台GO开源了
  5. 原生+jquery 实现好看滚动条。
  6. .net开发微信公众平台
  7. Monyer.cn黑客小游戏
  8. oracle数据库中提供的5种约束
  9. vm.dirty_background_ratio and vm.dirty_ratio
  10. 浅谈Javascript 数组与字典
  11. java StringBuffer与StringBuilder
  12. 中文乱码 $dbh-&gt;do(&quot;SET NAMES utf8&quot;);
  13. WordPress BackWPup插件‘tab’参数跨站脚本漏洞
  14. 杀掉linux所有进程的命令
  15. CPU卡中T=0通讯协议的分析与实现
  16. Material 字体样式与排版
  17. InnoDB的行溢出数据,Char的行结构存储
  18. 利用 ProtoThreads实现Arduino多线程处理(1)
  19. Redis入门及主从配置
  20. Visual Studio 项目模板制作(一)

热门文章

  1. 【转帖】K8S Deployment 命令
  2. 对比JPA 和Hibernate 和 Mybatis的区别
  3. 元组的简单介绍——参考Python编程从入门到实践
  4. nginx与PHP编译configure
  5. MySQL DBA的KPI考核指标有哪些
  6. Lucene入门+实现
  7. App功能测试点总结
  8. php中的特殊标签
  9. [LeetCode] 45. Jump game II ☆☆☆☆☆(跳跃游戏 2)
  10. VSCode Git 没有活动的源代码控制提供程序