首页 > TAG信息列表 > 神之怒
线性筛法 & 洛谷P4449 于神之怒加强版
筛质数 基础的。 // v 标记是否为合数,p 存储质数 for (int i=2; i<=N; ++i) { v[i]||(p[++cnt]=i); for (int j=1,t; j<=cnt&&(t=p[j]*i)<=N; ++j) { v[t]=1; if (i%p[j]==0) break; } } 原理:每个合数 \(t\) 只被其于神之怒加强版 HYSBZ - 4407
给下N,M,K.求 Input 输入有多组数据,输入数据的第一行两个正整数T,K,代表有T组数据,K的意义如上所示,下面第二行到第T+1行,每行为两个正整数N,M,其意义如上式所示。 Output 如题 Sample Input1 2 3 3 Sample Output20 Hint 1<=N,M,K<=5000000,1<=T<=2000 设f(luoguP4449 于神之怒加强版
题意 默认\(n\leqslant m\)。 一波莫反后可得: \(\sum\limits_{T=1}^{n}\frac{n}{T}\frac{m}{T}\sum\limits_{d|T}d^k\mu(\frac{T}{d})\) 前面显然是可以除法分块的,后面是个积性函数,可以线性筛。 设\(f(x)=\sum\limits_{d|x}d^k\mu(\frac{x}{d})\) 线性筛时\(i\)中不含\(prime_j\)于神之怒加强版 (莫反)
题目链接: 点击这里 首先哦,令n<=m,我们来化简式子: \[ \sum_{i=1}^n\sum_{j=1}^mgcd(i,j)^k \] 设gcd(i,j)=d,则可以变成这样: \[ \sum_{i=1}^n\sum_{j=1}^md^k\\ \] 把d提到前面去,来枚举d: \[ \sum_{d=1}^nd^k\sum_{i=1}^{\lfloor{\frac{n}{d}}\rfloor}\sum_{j=1}^{\lfloor{\frac{m}{d}P4449 于神之怒加强版 (莫比乌斯反演)
[题目链接] https://www.luogu.org/problemnew/show/P4449 给定n,m,k,计算 \sum_{i=1}^n \sum_{j=1}^m \mathrm{gcd}(i,j)^k 对1000000007取模的结果 // luogu-judger-enable-o2 /* ----------------------- 基本套路: 1.枚举约数 2.枚举整除分块,观察倍数关系 3.发现g(T)是[积性函[BZOJ4407]于神之怒加强版
Description: 求$ \sum_{i=1}^{n} \sum_{j=1}^m gcd(i,j)^k $ Hint: \(n,m<=5*10^6,数据组数<=2000\) Solution: 显然 \(Ans=\sum_{T=1}^{min(n,m)} \lfloor \frac{n}{T} \rfloor \lfloor \frac{m}{T} \rfloor \sum_{d|T} d^k*\mu(d)\)