news 2026/7/19 5:31:57

洛谷 P3935:Calculating ← 整数分块算法 + 快速幂 + 约数个数定理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
洛谷 P3935:Calculating ← 整数分块算法 + 快速幂 + 约数个数定理

【题目来源】
https://www.luogu.com.cn/problem/P3935

【题目描述】
若 x 分解质因数结果为 x=(p1^k1)×(p2^k2)×……×(pn^kn),令 f(x)=(k1+1)(k2+1)⋯(kn+1),求 ∑f(i) 对 998244353 取模的结果(其中,i=l~r)。

【输入格式】
输入只有一行两个整数,分别表示 l 和 r。

【输出格式】
输出一行一个整数表示答案。​​​​​​​

【输入样例】
2 4​​​​​​​

【输出样例】
7

【数据范围】
1≤l≤10^14,l≤r≤1.6×10^14,r−l>10^14。​​​​​​​

【算法分析】
● 整数分块算法:https://blog.csdn.net/hnjzsyjyj/article/details/162819219
● 若 x=(p1^k1)×(p2^k2)×……×(pn^kn),则 f(x)=(k1+1)(k2+1)⋯(kn+1) 实际上就是 x 的约数个数。而约数个数和的经典公式为 ∑f(i)=∑⌊n/i⌋,其中 i=1~n。
● 约数个数定理:https://blog.csdn.net/hnjzsyjyj/article/details/158127227

【算法代码】

#include <bits/stdc++.h> using namespace std; typedef long long LL; const LL MOD=998244353; LL cal(LL n) { LL t=0; for(LL le=1,ri=0; le<=n; le=ri+1) { LL k=n/le; ri=n/k; t=(t+k*((ri-le+1)%MOD))%MOD; } return t; } int main() { ios::sync_with_stdio(0); cin.tie(0); LL le,ri; cin>>le>>ri; LL ans=(cal(ri)-cal(le-1)+MOD)%MOD; cout<<ans<<"\n"; return 0; } /* in:2 4 out:7 */



【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/162819219

https://blog.csdn.net/hnjzsyjyj/article/details/158127227

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/19 5:31:51

英语学习的重要性与实用技巧

1. 为什么我们需要学习英语&#xff1f; 英语作为全球通用语言的地位已经持续了数十年。根据最新的语言使用统计数据&#xff0c;全球约有15亿人使用英语进行日常交流&#xff0c;其中约3.75亿人以英语为母语。这个数字背后反映的是一个不容忽视的现实&#xff1a;英语已经成为…

作者头像 李华
网站建设 2026/7/19 5:31:46

Java进程参数与线程安全List的优化实践

1. Java进程参数与线程安全List的核心关联在Java开发中&#xff0c;进程参数配置和集合类的线程安全问题看似两个独立的概念&#xff0c;实则存在紧密的工程实践联系。当我们在生产环境部署Java服务时&#xff0c;合理的JVM参数设置能够为多线程应用提供稳定的运行基础&#xf…

作者头像 李华
网站建设 2026/7/19 5:31:29

tox + testr 单元测试工作流程详解:从环境隔离到并行执行

两个工具各做什么 工具 全称 核心职责 tox tox 标准化的虚拟环境管理 测试编排 testr testrepository 测试仓库管理、并行执行、结果持久化 一句话概括: tox 解决的是「在干净的虚拟环境里跑测试,避免依赖污染」。 testr 解决的是「几十万测试怎么并行跑、跑完的结果如何归档复…

作者头像 李华
网站建设 2026/7/19 5:30:30

Python循环详解:for与while循环使用技巧与优化

1. Python循环基础概念解析循环是编程中最基础也最重要的控制结构之一&#xff0c;它允许我们重复执行某段代码块&#xff0c;直到满足特定条件为止。在Python中&#xff0c;循环主要分为两种类型&#xff1a;for循环和while循环。这两种循环各有特点&#xff0c;适用于不同的场…

作者头像 李华
网站建设 2026/7/19 5:29:11

若依框架安全加固:五个高危配置自查清单与实战修复指南

1. 项目概述&#xff1a;为什么若依框架需要一份安全自查清单&#xff1f;若依&#xff08;RuoYi&#xff09;作为国内Java开发者圈子里普及度极高的开源后台管理系统脚手架&#xff0c;其“开箱即用”的特性极大地加速了企业级应用的开发进程。无论是单体版、前后端分离版&…

作者头像 李华
网站建设 2026/7/19 5:28:34

Android开发环境搭建与实战问题解决指南

1. Android开发环境搭建与配置1.1 Android Studio安装与汉化作为Android开发的核心工具&#xff0c;Android Studio的安装是每个开发者必须掌握的基础技能。我推荐从官网直接下载最新稳定版&#xff0c;避免使用第三方渠道可能带来的安全隐患。安装过程中有几个关键点需要注意&…

作者头像 李华