[题解] [CQOI2007] 余数求和

news/2024/7/6 6:44:04

题面

题解

考虑到这个等式\(a\bmod b = a - b * \lfloor\frac{a}{b}\rfloor\)

所以我们可以得到:
\[ \begin{aligned} ans &= \sum_{i = 1}^{n}k \bmod i\\ &= \sum_{i = 1} ^ {n}k - i * \lfloor\frac{k}{i}\rfloor \end{aligned} \]
我们可以证得若\(\lfloor\frac{a}{b}\rfloor\)是相同的, 则对应的b所取得的区间必然是连续的

所以维护一下满足相同的\(\lfloor\frac{a}{b}\rfloor\)的区间的左右端点跳一下就可以了, 注意取值范围

#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <vector>
#define itn int
#define reaD read
using namespace std;

int n, k;
long long ans = 0; 

inline int read()
{
    int x = 0, w = 1; char c = getchar();
    while(c < '0' || c > '9') { if (c == '-') w = -1; c = getchar(); }
    while(c >= '0' && c <= '9') { x = x * 10 + c - '0'; c = getchar(); }
    return x * w;
}

int main()
{
    n = read(); k = read();
    for(int r, l = 1; l <= n; )
    {
        int t = k / l; r = t ? min(k / t, n) : n;
        ans += 1ll * (r - l + 1) * k - 1ll * (r + l) * (r - l + 1) * t / 2; l = r + 1; 
    }
    printf("%lld\n", ans); 
    return 0;
}

转载于:https://www.cnblogs.com/ztlztl/p/11013029.html


http://www.niftyadmin.cn/n/3369868.html

相关文章

.Net的一些术语(学习摘录)

.Net运行时&#xff08;CLR&#xff09;&#xff1a; 也称公共语言运行时&#xff08;Common Language Runtime&#xff09;或CLR&#xff0c;它实际上管理代码&#xff0c;他可以处理加载程序、运行程序 的代码以及提供所有支持服务的代码。 受管制的代码(managed code)&…

内蒙古出台机关事务管理办法 严控“三公经费”支出

图为新闻发布会现场。 张林虎 摄 中新网呼和浩特1月16日电 (张林虎)“控制‘三公’经费支出&#xff0c;是提高资金利用效率、建设节约型政府的重要环节。公务接待费、公务用车购置和运行费、因公出国(境)费都是重点严控项目。”16日&#xff0c;内蒙古自治区机关事务管理局副局…

linux串口工具 kermit,Linux下串口工具kermit的安装使用攻略

终端(计算机显示终端)是用户使用系统的入口&#xff0c;是计算机系统的输入输出设备&#xff0c;终端的发展也经历了字符哑终端、图形终端和网络终端三种形式&#xff1b;而console更强调是控制系统的地方&#xff0c;其使用者主要是管理员&#xff0c;从概念上讲terminal的范围…

linux solr日志,2018-04-22 Solr实现搜索功能单机版

Linux 下安装Solrsolr安装版本是 4.10.3安装步骤1.解压缩tomcat tar zxvf 命令2.安装taomcat 在 usr/local 下创建一个目录solr&#xff0c; mkdir /usr/local/solr3.将解压缩好的tomcat pc 到/usr/local/solr &#xff0c; cp -r apache-tomcat-7.0.47 /usr/local/solr/…

Mosquitto MQTT 桥接模式及其配置

最近在研究如何利用 MQTT 连接两个设备。在查询了很多资料后&#xff0c;我了解到可以利用 Mosquitto 的桥接模式。其中有篇文章《Mosquitto MQTT Bridge-Usage and Configuration》&#xff08;http://www.steves-internet-guide.com/mosquitto-bridge-configuration/&#xf…

C# 反射入门知识(转)lei_captain

1、 什么是反射 2、 命名空间与装配件的关系 3、 运行期得到类型信息有什么用 4、 如何使用反射获取类型 5、 如何根据类型来动态创建对象 6、 如何获取方法以及动态调用方法 7、 动态创建委托 1、什么是反射 Reflection&#xff0c;中文翻译为反射。 这是.…

Linux系统修改MQ地址,linux,windows下搭建RocketMQ

linux下搭建遇到的问题broker启动不起来nohup日志是xxxx/distribution/target/apache-rocketmq/bin/runbroker.sh: line 62: 126674 Killed $JAVA ${JAVA_OPT} $这种应该是服务器有什么监控线程&#xff0c;看对应的runbroker.sh 怀疑是里面jvm空间分配需求较大导致全部改小即可…

领域建模笔记

贫血模型 client -> &#xff08;business facade&#xff09; -> business logic -> data access object entity仅作为data access object传递数据&#xff0c;没有具体的行为&#xff0c;具体业务都在business logic, business logic较重,不那么面向对象 充血模型 c…