P1403 [AHOI2005] 约数研究

题目描述

科学家们在 Samuel 星球上的探险得到了丰富的能源储备,这使得空间站中大型计算机 Samuel II 的长时间运算成为了可能。由于在去年一年的辛苦工作取得了不错的成绩,小联被允许用 Samuel II 进行数学研究。

小联最近在研究和约数有关的问题,他统计每个正数 N 的约数的个数,并以 f(N) 来表示。例如 12 的约数有 1,2,3,4,6,12,因此 f(12)=6。下表给出了一些 f(N) 的取值:

N123456
f(N)122324

现在请你求出:

i=  ∑(1到n)  ​f(i)

输入格式

输入一个整数 n。

输出格式

输出答案。

输入输出样例

输入 #1复制

3

输出 #1复制

5

说明/提示

  • 对于 20% 的数据,N≤5000;
  • 对于 100% 的数据,1≤N≤10^6。

根据约数的一个基本性质,每个正约数 i 在 1 ~ n 中出现的次数为 \left \lfloor \frac{n}{i} \right \rfloor ,

so问题转换成求\sum_{i = 1}^{n}\left \lfloor \frac{n}{i} \right \rfloor 的值,套整除分块板子;

#include<bits/stdc++.h>
using namespace std;
//#pragma GCC optimize(2)
#define  endl '\n'
#define lowbit(x) ((x)&-(x))
const int mod=998244353;
typedef long long ll;
ll ans=0,n1,m1;
ll t,s1,s2,s3,s4,max1=0,min1=100000000,sum=0,n,m,i,j,k,l,r;
ll u[200005],w,v[200005];
inline int read() {
	bool sym=0;
	int res=0;
	char ch=getchar();
	while(!isdigit(ch))sym |=(ch =='-'),ch=getchar();
	while(isdigit(ch)) res =(res<<3)+(res<<1)+(ch^48),ch=getchar();
	return sym ? -res : res;
}
void print(int x) {
	if(!x)return;
	print(x/10);
	putchar(x%10+'0');
}
int isPrime(int n) {
	float n_sqrt;
	if(n==1) return 0;
	if(n==2 || n==3) return 1;
	if(n%6!=1 && n%6!=5) return 0;
	n_sqrt=floor(sqrt((float)n));
	for(int i=5; i<=n_sqrt; i+=6) {
		if(n%(i)==0 | n%(i+2)==0) return 0;
	}
	return 1;
}



/*ll cal(ll n) {
	ll res = 0;
	for(ll l = 1, r; l <= n; l = r + 1) {
		r = n / (n / l);
		res += n / l *(r-l+1)+ (l+r) * (r - l + 1)/2 ;// 等差数列 求和
	}
	return res;
}*/

int main() {


	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);


	cin>>n;
	for(l=1; l<=n; l=r+1) {
		r=n/(n/l);
		ans+=n/l*(r-l+1);
	}
	cout <<ans<< endl;

	return 0;
}


//mio lover

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/41071.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python教程(3)——python开发工具vscode的下载与安装

Python的开发工具有很多款&#xff0c;很多都是非常好用的&#xff0c;其中vscode作为其中一款Python的开发工具&#xff0c;是非常轻量级的&#xff0c;今天我们来介绍一下vs code的下载与安装。 vscode的下载与安装 首先需要到vscode的官网&#xff0c;这个谷歌或者百度一下…

[Java]Set、Map、List常见实现类的特点、使用方法总结

文章目录 1、图谱2、List1、ArrayList1. 特点2. 常见方法 2、LinkedList1、特点2、常见方法 3、Vector1、特点 3、Map1、HashMap1、特点常用方法 2、TreeMap1、特点 3、LinkedHashMap1、特点 4、Set1、HashSet1 、特点2、常用方法 2、LinkedHashSet特点 3、TreeSet1、特点2、使…

Ajax详解

文章目录 1. 概述1.1 Ajax工作原理1.2 Ajax的作用1.3 同步异步 2. 原生Ajax3. Axios3.1 Axios的基本使用3.2 Axios快速入门3.3 请求方法的别名 1. 概述 Ajax 是 “Asynchronous JavaScript and XML”&#xff08;异步 JavaScript 和 XML&#xff09;的缩写。它是一种在无需重新…

缓存数据一致性探究

缓存数据一致性探究 缓存是一种较低成本提升系统性能的方式&#xff0c;自它面世第一天起就备受广大开发者的喜爱。然而正如《人月神话》中的那句经典的“没有银弹”中所说&#xff0c;软件工程的设计没有银弹。 就像每一次发布上线修复问题的同时&#xff0c;也极易引入新的问…

蓝牙资讯|三星和日企合作开发智能戒指,将与苹果直接竞争

三星提交了一系列关于可穿戴设备的商标申请&#xff0c;其中包括与智能戒指有关的商标。近日有媒体爆出&#xff0c;三星已经开始与日本印刷电路板企业Meiko合作开发一款智能戒指。据称这款戒指可能会采用Galaxy品牌&#xff0c;或上周申请的智能戒指商标。 目前这一项目处于前…

JavaScript入门——笔记用

JavaScript入门 变量数组常量模板字符串检测数据类型判断分支判断循环数组函数对象 与html和css不同的是js并不是一门标记语言&#xff0c;而是与java等相同&#xff0c;也是一门编程语言&#xff08;实现人机交互的运行在客户端即浏览器的编程语言&#xff09; JavaScript作用…

不外传秘诀| docker 快速搭建常用的服务环境

本文主要给大家介绍如何使用 docker 搭建常用的服务环境&#xff0c; 包括mysql,reedis,nginx,jenkins 等常用的环境&#xff0c;下面直接进入主题。 1、MySQL 部署 ①搜索 MySQL 镜像 docker search mysql ②拉取 MySQL 镜像 docker pull mysql:5.7 ③创建容器&#xf…

NAS 问题处理记录

在解决自动配网的过程中&#xff0c;突然NAS不给力&#xff0c;偏偏这个时间找事情。上面这两个问题&#xff0c;说不复杂也不复杂&#xff0c;主要是自己在完全远程处理&#xff0c;很多不方便。当然少不了师弟的助攻&#xff0c;很感谢我的师弟帮忙&#xff0c;实验室的网络不…

JMeter做http接口功能测试

1. 普通的以key-value传参的get请求 e.g. 获取用户信息 添加http请求&#xff1b;填写服务器域名或IP&#xff1b;方法选GET&#xff1b;填写路径&#xff1b;添加参数&#xff1b;运行并查看结果。 2. 以Json串传参的post请求 e.g. 获取用户余额 添加http请求&#xff1b;…

软件测试行业的困境和迷局

中国的软件测试虽然起点较高&#xff0c;但是软件测试的发展似乎没有想象中那么顺利。 其实每个行业除了有自身领域外&#xff0c;还有属于自己的“生态系统”。属于软件测试的生态系统主要包括后备软件测试人员、软件开发人员和软件管理决策者。后备软件测试人员是软件测试的…

python爬虫-获取headers(报文头)关键参数实例小记

注意&#xff01;&#xff01;&#xff01;&#xff01;某XX网站逆向实例仅作为学习案例&#xff0c;禁止其他个人以及团体做谋利用途&#xff01;&#xff01;&#xff01; 第一步&#xff1a;请求页面&#xff0c;得到响应。建议首次请求时headers内容都带着&#xff0c;调试…

linux开机启动输入法且设置英文状态

debian&#xff0c;gnome桌面。fcitx5框架&#xff0c;四叶草输入法。 首先把fcitx5加到开机启动项&#xff0c;方法很多&#xff0c;gnome的插件“优化”里面可以添加开机启动项。 这样开机就能启动输入法&#xff0c;而不用再手动输入shell命令fcitx5了。 但是启动时是中…

【分布式应用】Ceph的实战应用

目录 一、创建 CephFS 文件系统 MDS 接口1.1服务端操作1&#xff09;在管理节点创建 mds 服务2&#xff09;查看各个节点的 mds 服务3&#xff09;创建存储池&#xff0c;启用 ceph 文件系统4&#xff09;查看mds状态&#xff0c;一个up&#xff0c;其余两个待命&#xff0c;目…

禁止浏览器自动填充密码功能,设置自动填充背景色。

禁止浏览器自动填充密码功能&#xff0c;设置自动填充背景色 1、禁止浏览器自动填充密码功能2、设置自动填充背景色&#xff08;阴影效果&#xff09; 1、禁止浏览器自动填充密码功能 text设置autocomplete“off” password设置 autocomplete“new-password” 两个一起设置&am…

MySQL数据库 【增删改查】

目录 一、新增 指定列插入 一次插入多个数据 二、查询 1、全列查询 2、指定列查询 3、查询字段为表达式 4、查询的时候给列名/表达式 指定别名 5、查询时去重 6、排序查询 7、条件查询 8、模糊查询 9、空值查询 10、分页查询 三、修改 四、删除 SQL 最核心…

Spring底层

配置文件 配置优先级 之前讲解过&#xff0c;可以用这三种方式进行配置 那如果这三种都进行了配置&#xff0c;那到底哪一份生效呢&#xff1f; 结论 优先级从大到小 properties>yml>yaml然后就是现在一般都用yml文件进行配置 其他配置方式 除了配置文件外 还有不同…

stm32读取DHT11温湿度传感器

stm32读取DHT11温湿度传感器 一.序言二.DHT11响应数据格式三.DHT11通讯过程3.1 产生起始信号3.2 读取数据03.3 读取数据1DHT11停止信号 四.代码实例4.1读取DHT11源文件4.2 读取DHT11头文件 五.结语5.1 总结整体思路5.2 对读者的期望 一.序言 我们知道DHT11是单总线协议&#x…

基于Java+SpringBoot+Vue前后端分离仓库管理系统详细设计和实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

kubernetes中特定域名使用自定义DNS服务器出现的解析异常

故障发生背景&#xff1a; 租户反馈生产业务服务连接到中间件的时候&#xff0c;偶尔会有连接失败的情况&#xff0c;然后我们查看对应组件服务正常&#xff0c;手动请求组件服务也显示正常&#xff0c;让租户查看业务服务日志发现报错无法解析对应的域名&#xff0c;我们手动是…

Spring Batch之读数据库—JdbcPagingItemReader(四十一)

一、JdbcPagingItemReader Spring Batch框架提供了对JDBC分页读取支持的组件JdbcPagingItemReader。JdbcPaginItemReader实现ItemReader接口&#xff0c;核心作用是将数据库中记录通过分页的方式转换为Java对象。在JdbcPagingItemReader将数据库记录转换为Java对象是主要有两步…