P5325 【模板】Min_25筛】的更多相关文章

\(\mathcal{Description}\)   Link.   对于积性函数 \(f(x)\),有 \(f(p^k)=p^k(p^k-1)~(p\in\mathbb P,k\in\mathbb N_+)\).求 \(\sum_{i=1}^nf(i)\bmod(10^9+7)\).   \(n\le10^{10}\). \(\mathcal{Solution}\)   Min_25 筛是不可能的.   Powerful Number 三步走咯!考虑素数点值: \[f(p)=p^2-p \]…
用途 快速($O(\frac{n^{3/4}}{logn})$)地计算一些函数f的前缀和,以及(作为中间结果的)只计算质数的前缀和 一般要求f(p)是积性函数,$f(p)$是多项式的形式,且$f(p^k)$可以快速计算 做法 首先考虑求出范围内的质数的取值的和 如果有$f(p)=\sum{a_ip^i}$ 那么我们构造$h_i(x)=x^i$,不难发现$h_i$是完全积性的 就是说,把f在质数的时候的式子拆开,然后让它在不是质数的时候也成立 考虑求其中的一个h,接下来设$pri_j$是第j个质数…
P5325 [模板]Min_25筛 题目背景 模板题,无背景. 题目描述 定义积性函数$f(x)$,且$f(p^k)=p^k(p^k-1)$($p$是一个质数),求 $$\sum_{i=1}^n f(x)$$ 对$10^9+7$取模. 输入输出格式 输入格式: 一行一个整数$n$. 输出格式: 一个整数表示答案. 输入输出样例 输入样例#1: 复制 10 输出样例#1: 复制 263 输入样例#2: 复制 1000000000 输出样例#2: 复制 710164413 说明 $f(1)=1,f(…
\(\color{#0066ff}{ 题目描述 }\) 给定一个正整数\(N(N\le2^{31}-1)\) 求 \(ans_1=\sum_{i=1}^n\varphi(i)\) \(ans_2=\sum_{i=1}^n \mu(i)\) \(\color{#0066ff}{输入格式}\) 一共T+1行 第1行为数据组数T(T<=10) 第2~T+1行每行一个非负整数N,代表一组询问 \(\color{#0066ff}{输出格式}\) 一共T行,每行两个用空格分隔的数ans1,ans2 \(\c…
终于知道发明者的正确的名字了,是Min_25,这个筛法速度为亚线性的\(O(\frac{n^{\frac{3}{4}}}{\log x})\),用于求解具有下面性质的积性函数的前缀和: 在 \(p\) 处是简单的低次多项式 在 \(p^c\) 处可以快速求值 貌似积性函数是指取一个积性函数 \(f(x)\) ,其在质数的位置上取值与所求函数相同.所以可以用来求n以内的质数的个数(取常函数 \(f(x)=1\) )以及质数的和(取恒等函数 \(f(x)=x\) ). 参考资料: loj#6235.…
LINK:Min_25筛 新版感觉有点鬼畜 而且旧版的也够用了至少. 这个并不算很简单也不算很困难的知识点 学起来还是很麻烦的. (误入了很多dalao的blog 说的云里雾里的 甚是懵逼 这里推荐几个blog一起看 能看出很多门道 网上资源辣么多 我自然也不会去写一个非常正常的学习笔记辣.. 只会写几个容易疑惑的地方. 注意 学会 和会写代码是两码事 因为代码中有一些细节需要细细揣摩. 关于g数组的求出 其转移静下心来理解还是可以看懂的这里不再赘述. 注意 为了方便\(f(1)\)最后考虑.…
原文链接https://www.cnblogs.com/zhouzhendong/p/Min-25.html 前置技能 埃氏筛法 整除分块(这里有提到) 本文概要 1. 问题模型 2. Min_25 筛 3. 模板题以及模板代码 问题模型 有一个积性函数 $f$ ,对于所有质数 $p$,$f(p)$ 是关于 $p$ 的多项式,$f(p^k)$ 非常容易计算(不一定是关于 p 的多项式). 求 $$\sum_{i=1}^{n} f(i)$$ $n\leq 10^{10}$ ${\rm Time\…
题目大意 给你 \(n,k\),求 \[ S_k(n)=\sum_{i=1}^n\sigma_0(i^k) \] 对 \(2^{64}\) 取模. 题解 一个min_25筛模板题. 令 \(f(n)=\sigma_0(n^k)\),那么 \(S_k(n)=\sum_{i=1}^nf(i)\),而且 \[ \begin{cases} f(1)&=1\\ f(p)&=k+1\\ f(p^c)&=kc+1 \end{cases} \] 直接上min_25筛就好了. 时间复杂度:\(O(\…
关于min_25筛的一些理解 如果想看如何筛个普通积性函数啥的,就别往下看了,下面没有的(QwQ). 下文中,所有的\(p\)都代表质数,\(P\)代表质数集合. 注意下文中定义的最小/最大质因子都是默认所有质因子本质不同. 即\(2*2*3*4*5*5\)的最小/次小质因子都是\(2\),最大/次大质因子都是\(5\). step1. 适用条件与思想 min_25筛用于求积性函数前缀和,即\(\sum_{i=1}^n f(i)\) . min_25筛相比于传统筛法来说(如莫比乌斯反演.杜教筛)…
本人在LOJ的第三题(前两题太水不好意思说了QwQ),欢迎大家踩std. 题目链接:LOJ 题目大意:定义函数 $f$:($minp$ 表示最小质因子) $$f(x)=\begin{cases}0&x=1\\x-2&x\in prime\\minp(x)-1&otherwise\end{cases}$$ 求 $f$ 前 $n$ 项的和对 $20190601$ 取模的值. $1\le n\le 10^{11}$. 考虑 min_25 筛中的 $g_0(n,j)$($0$ 次方,即满足…
前言 为什么叫学习小记呢?因为暂时除了模板题就没有做其他的东西了.(雾 这个东西折磨了我一整天,看得我身不如死,只好结合代码理解题解,差点死在机房.(话说半天综合半天竞赛真是害人不浅) 为了以后忘了再受荼毒,这里还是写一下,如果有人会看到的话,希望可以帮助到吧.(话说这个东西我已经拖了好久了啊!!!) (话说我怎么这么多话说啊?!!) Min_25 筛 这个东西是由聚聚\(\texttt{Min-25}\)发明了,所以我们称之为\(\texttt{Min-25}\)筛.(感觉有点民科了)那就不废…
杜教筛 \(\) 是 \(\) 的前缀和,\(\), \(\) 同理. 假设 \( × = ℎ\) ,并且 \(, \) 易求出,\(\) 难求出. 那么 \[H () = \sum_{ \cdot ≤} () () = \sum_{≤} () (\frac {} {})\\ = f(1)\cdot () + \sum_{2≤≤} () (\frac {} {})\] 有: \[f(1)\cdot G(n)=H(n)-\sum_{2≤≤} () (\frac {} {}) \] 整除分块,可以在…
题目大意 给你 \(n,m\),求 \[ \sum_{i=1}^n\sum_{x_1,x_2,\ldots,x_m=1}^i\operatorname{lcm}(\gcd(i,x_1),\gcd(i,x_2),\ldots,\gcd(i,x_m)) \] 对 \({10}^9+7\) 取模. \(nm\leq {10}^9\) 题解 先推一下式子: \[ ans=\sum_{i=1}^n\sum_{x_1,x_2,\ldots,x_m=1}^i\operatorname{lcm}(\gcd(i,…
传送门 省选之前做数论题会不会有Debuff啊 这道题显然是要求\(1\)到\(x\)中所有数第二大质因子的大小之和,如果不存在第二大质因子就是\(0\) 线性筛似乎可以做,但是\(10^{11}\)的数据范围让人望而却步,而杜教筛需要对\(f(x)\)找到一个函数\(g(x)\)做狄利克雷卷积成为一个好算前缀和的函数\(h(x)\),相信各位是找不到这样一个函数的.所以考虑Min_25筛.但用Min_25筛还不知道要筛什么东西,故从Min_25筛最后的计算过程入手. Min_25筛的每一层递归…
题目描述 记\(sgcd(i,j)\)为\(i,j\)的次大公约数. 给你\(n\),求 \[ \sum_{i=1}^n\sum_{j=1}^n{sgcd(i,j)}^k \] 对\(2^{32}\)取模. \(n\leq {10}^9,k\leq 50\) 题解 记\(f(n)\)为\(n\)的次大因数 显然\(sgcd(i,j)=f(gcd(i,j))\) 先推一波式子. \[ \begin{align} &\sum_{i=1}^n\sum_{j=1}^n{sgcd(i,j)}^k\\ =&a…
题目描述 给你\(n\),求 \[ \prod_{i=1}^n{\sigma_0(i)}^{i+\mu(i)} \] 对\({10}^{12}+39\)取模. \(\sigma_0(i)\)表示约数个数. 题解 把式子拆成两部分: \[ \prod_{i=1}^n{\sigma_0(i)}^{i+\mu(i)}=\prod_{i=1}^n{\sigma_0(i)}^{i}\prod_{i=1}^n{\sigma_0(i)}^{\mu(i)} \] 先看前面这部分 \[ \begin{align}…
min_25筛 用来干啥? 考虑一个积性函数\(F(x)\),用来快速计算前缀和\[\sum_{i=1}^nF(i)\] 当然,这个积性函数要满足\(F(x),x\in Prime\)可以用多项式表示 同时,\(F(x^k),x\in Prime\)要能够快速计算答案 需要预处理的东西 先不考虑求前缀和的问题,考虑一个积性函数\(F(x)\) 求解\[\sum_{i=1}^n[i\in Prime]F(i)\] 直接求我也会懵逼的,还是找一个函数来算算,假设\(F(x)=x^k\) 那么,求解\…
min_25 筛是由 min_25 大佬使用后普遍推广的一种新型算法,这个算法能在 \(O({n^{3\over 4}\over log~ n})\) 的复杂度内解决所有的积性函数前缀和求解问题(个人感觉套上素数定理证明的复杂度的话应该要把下面的 log 改成 ln ,不过也差不多啦~) 其实 min_25 筛的入门TXC 大佬的 blog 已经写的非常棒了QVQ 所以搬博客的话鉴于博主太懒了就不干了...直接帮 TXC 大佬安利博客完事 这篇博客主要的目的是证明网上大多没有的 min_25 筛…
原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod1222.html 题意 给定 $a,b$, 求 $$\sum_{n=a}^b \sum_{i=1}^n \sum_{j=1}^i [{\rm lcm } (i,j) = n]$$ $$a,b\leq 10^{11}$$ $${\rm Time \ Limit } = 6s$$ 题解 本题做法很多. Min_25 筛 先差分一下,转化成求前缀和. 先把原题的统计无序数对转化成统计有序数对,最终 $an…
先定义几个符号: []:若方括号内为一个值,则向下取整,否则为布尔判断 集合P:素数集合. 题目分析: 题目是一个积性函数.做法之一是洲阁筛,也可以采用Min_25筛. 对于一个可以进行Min_25筛法的积性函数,它需要满足与洲阁筛相同的条件,即: 对于$f(p), p \in P$,它可以多项式表出.对于$f(p^k),p \in P$可以被快速计算出. 这道题中$f(p) = p-1$再对$2$进行修正即可. 对于1的情况我们单独考虑,现在我们对答案进行一些变换. $$\sum_{i=2}^…
Min_25 筛这个东西,完全理解花了我很长的时间,所以写点东西来记录一些自己的理解. 它能做什么 对于某个数论函数 \(f\),如果满足以下几个条件,那么它就可以用 Min_25 筛来快速求出这个函数的前缀和. 它是一个积性函数 对于一个质数 \(p\) ,\(f(p)\) 的表达式必须是一个项数比较小的多项式.即 \(\displaystyle f(p) = \sum a_ip^{b_i}\). 对于一个质数 \(p\) ,\(f(p^k)\) 的表达式必须可以由 \(f(p)\) 快速得到…
[复习]莫比乌斯反演,杜教筛,min_25筛 莫比乌斯反演 做题的时候的常用形式: \[\begin{aligned}g(n)&=\sum_{n|d}f(d)\\f(n)&=\sum_{n|d}\mu(\frac{d}{n})g(d)\end{aligned}\] 实际上还有 \[\begin{aligned}g(n)&=\sum_{d|n}f(d)\\f(n)&=\sum_{d|n}\mu(\frac{n}{d})g(d)\end{aligned}\] 证明可以看看这里,…
题目链接 \(Description\) 给定\(n\),求\(1\sim n\)中的素数个数. \(2\leq n\leq10^{11}\). \(Solution\) Min_25筛.只需要求出\(g(n,|P|)\). 跑的好慢啊QAQ //5283ms 11.62M #include <cmath> #include <cstdio> #include <algorithm> typedef long long LL; const int N=317000<…
题目链接 Min_25筛见这里: https://www.cnblogs.com/cjyyb/p/9185093.html https://www.cnblogs.com/zhoushuyu/p/9187319.html https://www.cnblogs.com/SovietPower/p/10101811.html \(Description\) 给定\(n\),求积性函数\(f(p^c)=p\oplus c\)的前缀和.\(\oplus\)表示异或运算. \(n\leq 10^{10}…
Min_25 筛 yyb好神仙啊 干什么用的 可以在\(O(\frac{n^{\frac 34}}{\log n})\)的时间内求积性函数\(f(x)\)的前缀和. 别问我为什么是这个复杂度 要求\(f(p)\)是一个关于\(p\)的简单多项式,\(f(p^c)\)可以快速计算. 怎么做啊 首先我们需要对每个\(x=\lfloor\frac ni\rfloor\)求出\(\sum_{i=1}^x[i是质数]f(i)\). 怎么求呢? 先线性筛出\(\sqrt n\)范围内的质数,设\(P_j\)…
题意 求 \([L, R]\) 之间的素数之和 . \(L≤10^{10},2×10^{10} \le R \le 10^{11}\) 题解 一个有点裸的 min_25筛 ? 现在我只会筛素数的前缀和 , 合数的过几天再学吧 . 首先推荐一波 yyb大佬博客 这个人很强 , 别那么fake就好啦 令 \(F(x) = x\) 显然此处 \(F(x)\) 是完全积性函数 . 我们需要求的就是 \[\displaystyle \sum_{i=1}^{n} [i \in Prime] F(i)\] .…
[51NOD 1847]奇怪的数学题(莫比乌斯反演,杜教筛,min_25筛,第二类斯特林数) 题面 51NOD \[\sum_{i=1}^n\sum_{j=1}^nsgcd(i,j)^k\] 其中\(sgcd\)表示次大公约数. 题解 明摆着\(sgcd\)就是在\(gcd\)的基础上除掉\(gcd\)的最小因数. 所以直接枚举\(gcd\). \[\begin{aligned} ans&=\sum_{i=1}^n\sum_{j=1}^n sgcd(i,j)^k\\ &=\sum_{i=1…
[LOJ#572]Misaka Network 与求和(莫比乌斯反演,杜教筛,min_25筛) 题面 LOJ \[ans=\sum_{i=1}^n\sum_{j=1}^n f(gcd(i,j))^k\] 其中\(f(x)\)表示\(x\)的次大质因子. 题解 这个数据范围不是杜教筛就是\(min\_25\)筛了吧... 看到次大质因子显然要\(min\_25\)筛了吧... 莫比乌斯反演的部分比较简单,懒得写过程了. \[ans=\sum_{T=1}^n [\frac{n}{T}]^2\sum_…
题目:http://www.51nod.com/Challenge/Problem.html#!#problemId=1965 考虑 \( \prod_{i=1}^{n}\sigma_0^i \) \(=\prod_{j=1}^{p_j<=n}\prod_{t=1}^{p_j^t<=n}(t+1)^{ p_j^tS(\left\lfloor\frac{n}{p_j^t}\right\rfloor) - p_j^{t+1}S(\left\lfloor\frac{n}{p_j^{t+1}}\rig…
题目:https://loj.ac/problem/6053 min_25筛:https://www.cnblogs.com/cjyyb/p/9185093.html 这里把计算 s( n , j ) 需要的“质数部分的贡献”分成两部分算,令 \( g(n,j)=\sum\limits_{i=1}^{n}[i \in P or min_i > p_j]i \) , \( h(n,j)=\sum\limits_{i=1}^{n}[i \in P or min_i > p_j]1 \) ,其中 P…