魅力锁舞!
gym103415k
求
\[\sum_{a, \forall a_i \in [1, m]} [\gcd_{i=1}^n(a_i)\le q][\operatorname{lcm}_{i=1}^n(a_i)\ge p](\prod_{i=1}^{n} a_i)
\]
考虑容斥,则
\[ans=(\sum_{i=1}^{m} i)^n-\sum_{a, \forall a_i \in [1, m]} [\operatorname{lcm}_{i=1}^n(a_i)< p](\prod_{i=1}^{n} a_i)-\sum_{a, \forall a_i \in [1, m]} [\gcd_{i=1}^n(a_i)> q](\prod_{i=1}^{n} a_i)+\sum_{a, \forall a_i \in [1, m]} [\gcd_{i=1}^n(a_i)>q][\operatorname{lcm}_{i=1}^n(a_i)<p](\prod_{i=1}^{n} a_i)
\]
设 \(g(x)\) 为 \(lcm\) 为 \(x\) 的答案,\(f(x)\) 为 \(lcm\) 为 \(x\) 的因数的答案,则 \(f(x)=(\sum_{d|x} d)^{n}, f(x)=\sum_{d|x} g(d)\),不难莫反求回去 \(g\),那么第一部分解决了,为 \(\sum_{i=1}^{p-1} g(i)\)。
设 \(h(x)\) 为 \(\gcd\) 为 \(x\) 的答案,设 \(K(x)\) 为 \(\gcd\) 为 \(x\) 的倍数的答案,则 \(K(x)=(\sum_{x|d} d)^{n}\),则 \(K(x)=\sum_{x|d} h(d)\),仍然莫反(不会的话可以后缀差分),第二部分为 \(\sum_{i=q+1}^{m} h(i)\)。
考虑枚举 \(\operatorname{lcm}\),然后枚举 \(\operatorname{lcm}\) 的因数 \(\gcd\),整个复杂度是 \(O((p-q)\ln m)\) 的,也就是说剩下的要 \(O(1)\) 算。
仍是除掉 \(\gcd=a\),算上 \(a^{n}\) 的贡献,同时将值域变为 \(\frac{m}{a}\),现欲求 \(\operatorname{lcm}=x, \gcd=1\) 的序列和,设 \(T(x)\) 为答案,则有 \(g(x)=\sum_{d|x}T(d)\),但这里不能直接莫反,有值域限制,所以做一次后缀差分即可。