UOJ #188 Sanrd —— min_25筛

时间:2022-08-26 21:19:31

题目:http://uoj.ac/problem/188

参考博客:https://www.cnblogs.com/cjoieryl/p/10149748.html

关键是枚举最小质因子...所以构造的 S 与最小质因子有关。

代码如下:

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long ll;
int const xn=1e6+;
int pri[xn],cnt,sqr;
ll n,w[xn],m,f[xn];
bool vis[xn];
void init(ll mx)
{
for(int i=;i<=mx;i++)
{
if(!vis[i])pri[++cnt]=i;
for(int j=;j<=cnt&&(ll)i*pri[j]<=mx;j++)
{
vis[i*pri[j]]=;
if(i%pri[j]==)break;
}
}
}
int Id(ll x)
{
if(x>sqr)return n/x;
return m-x+;
}
ll S(ll x,int y)
{
if(pri[y]>x)return ;
ll ret=;
for(int i=y;i<=cnt&&(ll)pri[i]*pri[i]<=x;i++)
for(ll p0=pri[i];p0*pri[i]<=x;p0*=pri[i])
ret+=S(x/p0,i+)+(ll)pri[i]*(f[Id(x/p0)]-i+);
return ret;
}
ll solve(ll nw)
{
m=; n=nw; sqr=sqrt(n);
for(ll i=,j;i<=n;i=j+)
{w[++m]=n/i; j=n/(n/i); f[m]=w[m]-;}
for(int j=;j<=cnt;j++)
for(int i=;i<=m&&(ll)pri[j]*pri[j]<=w[i];i++)
f[i]=f[i]-(f[Id(w[i]/pri[j])]-j+);
return S(n,);
}
int main()
{
ll L,R; scanf("%lld%lld",&L,&R); init(sqrt(R));
printf("%lld\n",solve(R)-solve(L-));
return ;
}

UOJ #188 Sanrd —— min_25筛的更多相关文章

  1. UOJ188 Sanrd Min&lowbar;25筛

    传送门 省选之前做数论题会不会有Debuff啊 这道题显然是要求\(1\)到\(x\)中所有数第二大质因子的大小之和,如果不存在第二大质因子就是\(0\) 线性筛似乎可以做,但是\(10^{11}\) ...

  2. UOJ188&period; 【UR &num;13】Sanrd &lbrack;min&lowbar;25筛&rsqb;

    传送门 思路 也可以算是一个板题了吧qwq 考虑min_25筛最后递归(也就是DP)的过程,要枚举当前最小的质因子是多少. 那么可以分类讨论,考虑现在这个质因子是否就是次大质因子. 如果不是,那么就是 ...

  3. UOJ 188 【UR &num;13】Sanrd——min&lowbar;25筛

    题目:http://uoj.ac/problem/188 令 \( s(n,j)=\sum\limits_{i=1}^{n}[min_i>=p_j]f(j) \) ,其中 \( min_i \) ...

  4. 【UOJ&num;188】Sanrd(min&lowbar;25筛)

    [UOJ#188]Sanrd(min_25筛) 题面 UOJ 题解 今天菊开讲的题目.(千古神犇陈菊开,扑通扑通跪下来) 题目要求的就是所有数的次大质因子的和. 这个部分和\(min\_25\)筛中枚 ...

  5. 「uoj&num;188&period; 【UR &num;13】Sanrd」

    题目 不是很能看懂题意,其实就是求\([l,r]\)区间内所有数的次大质因子的和 这可真是看起来有点鬼畜啊 这显然不是一个积性函数啊,不要考虑什么特殊的函数了 我们考虑Min_25筛的过程 设\(S( ...

  6. &lbrack;复习&rsqb;莫比乌斯反演&comma;杜教筛&comma;min&lowbar;25筛

    [复习]莫比乌斯反演,杜教筛,min_25筛 莫比乌斯反演 做题的时候的常用形式: \[\begin{aligned}g(n)&=\sum_{n|d}f(d)\\f(n)&=\sum_ ...

  7. 数论(8):min&lowbar;25 筛(扩展埃氏筛)

    min_25 筛介绍 我们考虑这样一个问题. \[ans=\sum_{i = 1}^nf(i)\\ \] 其中 \(1 \le n \le 10^{10}\) 其中 \(f(i)\) 是一个奇怪的函数 ...

  8. Min&lowbar;25 筛小结

    Min_25 筛这个东西,完全理解花了我很长的时间,所以写点东西来记录一些自己的理解. 它能做什么 对于某个数论函数 \(f\),如果满足以下几个条件,那么它就可以用 Min_25 筛来快速求出这个函 ...

  9. LOJ 572 「LibreOJ Round &num;11」Misaka Network 与求和——min&lowbar;25筛

    题目:https://loj.ac/problem/572 莫比乌斯反演得 \( ans=\sum\limits_{D=1}^{n}\left\lfloor\frac{n}{D}\right\rflo ...

随机推荐

  1. Hyper-V 与Broadcom网卡兼容问题

    最近在测虚拟机时,碰到一个网卡和Hyper-V不兼容问题,现在共享给大家参考,希望对大家有帮忙. 故障描述: Dell R720 Windows 2012操作系统下的Hyper-V环境后,虚拟机网络速 ...

  2. Android 高德地图No implementation found for long com&period;autonavi&period;amap&period;mapcore&period;MapCore

    此篇博客最后更新时间写自2016.5.18.当下高德地图jar版本为3.3.1. 使用高德地图碰到此问题,纠结许久(接近4个多小时). 记录在此,希望遇到相同问题的读者可以有所借鉴. 错误截图: 导致 ...

  3. mysqldump常用于MySQL数据库逻辑备份

    mysqldump常用于MySQL数据库逻辑备份. 1.各种用法说明 A. 最简单的用法: mysqldump -uroot -pPassword [database name] > [dump ...

  4. sublime安装 less环境

    工具的选择: mac-codekit simpless->跨平台 winless-windows  less.js下载:http://pan.baidu.com/s/1o60yTZ0   安装L ...

  5. nuget pack 时不包含依赖包(而不是引用项目的dll,区别于IncludeReferencedProjects)

    Excluding development dependencies when creating packages Some NuGet packages are useful as developm ...

  6. 微信小程序 - 自定义创建

    自定义创建与默认创建完全相同, 只是不要勾选quick start即可 淡定(不要看到报错就紧张, 一定要淡定) 看看它说了什么, no such file or directory(没有文件或目录) ...

  7. ThreadLocal用例之周期为一次请求的变量

    public class RecordedLocal { private static ThreadLocal<Recorded> local = new ThreadLocal<R ...

  8. JVM启动参数

    JVM参数的含义 实例见实例分析 参数名称 含义 默认值   -Xms 初始堆大小 物理内存的1/64(<1GB) 默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,J ...

  9. windows bat 脚本&lpar;一&rpar;切换当前目录

    一.切换当前目录 现在桌面新建一个文件, 然后打开输入 cmd /k "cd /d D:\file"    如下图点击“另存为”,保存类型选择 “所有文件” 然后会在保存路径下发现 ...

  10. chrome 如何开启网页另存为&period;mhtml 功能

    打开chrome浏览器,输入地址:chrome://flags/   找到将网页另存为MHTML,点击启用就可以了. 或者直接输入:chrome://flags/#save-page-as-mhtml