P2260 [清华集训2012]模积和(整除分块)
Posted 繁凡さん
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P2260 [清华集训2012]模积和(整除分块)相关的知识,希望对你有一定的参考价值。
整理的算法模板合集: ACM模板
实际上是一个全新的精炼模板整合计划
Problem
求
∑
i
=
1
n
∑
j
=
1
m
(
n
m
o
d
i
)
×
(
m
m
o
d
j
)
,
i
≠
j
\\sum_{i=1}^{n} \\sum_{j=1}^{m} (n \\bmod i) \\times (m \\bmod j), i \\neq j
i=1∑nj=1∑m(nmodi)×(mmodj),i=j
m
o
d
19940417
\\mod 19940417
mod19940417 的值
Solution
显然带着一个 i ≠ j i\\neq j i=j 去推式子很难受,所以我们利用容斥把他们分开:
a n s = ∑ i = 1 n ∑ j = 1 m ( n m o d i ) × ( m m o d j ) , i ≠ j = ∑ i = 1 n ∑ j = 1 m ( n m o d i ) × ( m m o d j ) − ∑ i = 1 min { n , m } ( n m o d i ) × ( m m o d i ) = ∑ i = 1 n ∑ j = 1 m ( n − ⌊ n i ⌋ × i ) × ( m − ⌊ m j ⌋ × j ) − ∑ i = 1 min { n , m } ( n − ⌊ n i ⌋ × i ) × ( m − ⌊ m i ⌋ × i ) = ( ∑ i = 1 n ( n − ⌊ n i ⌋ × i ) ) × ( ∑ j = 1 m ( m − ⌊ m j ⌋ × j ) ) − ∑ i = 1 min { n , m } ( n − ⌊ n i ⌋ × i ) × ( m − ⌊ m i ⌋ × i ) = ( ∑ i = 1 n ( n − ⌊ n i ⌋ × i ) ) × ( ∑ j = 1 m ( m − ⌊ m j ⌋ × j ) ) − ∑ i = 1 min { n , m } ( n m + i 2 × ⌊ n i ⌋ × ⌊ m i ⌋ − i ( m × ⌊ n i ⌋ + n × ⌊ m i ⌋ ) ) \\begin{aligned}ans&=\\sum_{i=1}^{n} \\sum_{j=1}^{m} (n \\bmod i) \\times (m \\bmod j), i \\neq j&\\\\&=\\sum_{i=1}^{n} \\sum_{j=1}^{m} (n \\bmod i) \\times (m \\bmod j)-\\sum_{i=1}^{\\min\\{n, m\\}} (n \\bmod i) \\times (m \\bmod i)&\\\\&=\\sum_{i=1}^n\\sum_{j=1}^m(n-\\lfloor\\frac{n}{i}\\rfloor\\times i)\\times(m-\\lfloor\\frac{m}{j}\\rfloor\\times j)-\\sum_{i=1}^{\\min\\{n, m\\}}(n-\\lfloor\\frac{n}{i}\\rfloor\\times i)\\times(m-\\lfloor\\frac{m}{i}\\rfloor\\times i)&\\\\&=(\\sum_{i=1}^n(n-\\lfloor\\frac{n}{i}\\rfloor\\times i))\\times(\\sum_{j=1}^m(m-\\lfloor\\frac{m}{j}\\rfloor\\times j))-\\sum_{i=1}^{\\min\\{n, m\\}}(n-\\lfloor\\frac{n}{i}\\rfloor\\times i)\\times(m-\\lfloor\\frac{m}{i}\\rfloor\\times i)&\\\\&=(\\sum_{i=1}^n(n-\\lfloor\\frac{n}{i}\\rfloor\\times i))\\times(\\sum_{j=1}^m(m-\\lfloor\\frac{m}{j}\\rfloor\\times j))-\\sum_{i=1}^{\\min\\{n, m\\}}(nm+i^2\\times\\lfloor\\frac{n}{i}\\rfloor\\times\\lfloor\\frac{m}{i}\\rfloor-i(m\\times\\lfloor\\frac{n}{i}\\rfloor+n\\times\\lfloor\\frac{m}{i}\\rfloor))\\end{aligned} ans=i=1∑nj=1∑m(nmodi)×(mmodj),i=j=i=1∑nj=1∑m(nmodi)×(mmodj)−i=1∑min{n,m}(nmodi)×(mmodi)=i=1∑nj=1∑m(n−⌊in⌋×i)×(m−⌊jm⌋×j)−i=1∑min{n,m}(n−⌊in⌋×i)×(m−⌊im⌋×i)=(i=1∑n(n−⌊in⌋×i))×(j=1∑m(m−⌊jm⌋×j))−i=1∑min{n,m}(n−⌊in⌋×i)×(m−⌊im⌋×i)=(i=1∑n(n−⌊in⌋×i))×(j=1∑m(m−⌊jm⌋×j))−i=1∑min{n,m}(nm+iP2260 [清华集训2012]模积和