Floor Sum 问题推导

Floor Sum 问题推导

第一类基本问题

Formula 1

\[A=A_1M+A_2 \]

\[f(N,M,A,B)=\sum_{i=0}^{N-1}\lfloor\frac{Ai+B}{M}\rfloor\\ =\sum_{i=0}^{N-1}\lfloor\frac{(A_1M+A_2)i+B}{M}\rfloor\\ =\sum_{i=0}^{N-1}\lfloor\ A_1i+\frac{A_2i+B}{M}\rfloor\\ =\frac{N(N-1)}{2}A_1+\sum_{i=0}^{N-1}\lfloor\ \frac{A_2i+B}{M}\rfloor\\ =\frac{N(N-1)}{2}A_1+f(N,M,A_2,B) \]

Formula 2

\[B=B_1M+B_2 \]

\[f(N,M,A,B)=\sum_{i=0}^{N-1}\lfloor\frac{Ai+B}{M}\rfloor\\ =\sum_{i=0}^{N-1}\lfloor\frac{Ai+B_1M+B_2}{M}\rfloor\\ =\sum_{i=0}^{N-1}\lfloor B_1 +\frac{Ai+B_2}{M}\rfloor\\ =NB_1+\sum_{i=0}^{N-1}\lfloor\ \frac{Ai+B_2}{M}\rfloor\\ =NB_1+f(N,M,A,B_2) \]

Formula 3

\[K=\lfloor \frac{A(N-1)+B}{M}\rfloor \]

\[\lfloor \frac{Ai+B}{M} \rfloor=k \Leftrightarrow \lceil \frac{kM-B}{A}\rceil\leq i<\lceil\frac{(k+1)M-B}{A}\rceil\]

\[c_k=\lceil\frac{kM-B}{A}\rceil,c_{K+1}=N\]

\[f(N,M,A,B)=\sum_{i=0}^{N-1}\lfloor\frac{Ai+B}{M}\\ =\sum_{k=0}^{K}k(c_{k+1}-c_k)\\ =KN-\sum_{k=1}^{K}c_k\\ =KN-\sum_{k=0}^{K-1}\lfloor \frac{kM+M-B+A-1}{A}\rfloor\\ =KN-f(K,A,M,M-B+A-1) \]

Formula 4

\[f(N,M,0,B)=N\lfloor\frac{B}{M}\rfloor \]

Computation

辗转相除计算,边界情况 \(A=0\)

第二类基本问题

\[f_{p,q}(N,M,A,B)=\sum_{i=0}^{N-1}i^p\lfloor\frac{Ai+B}{M}\rfloor^q \]

这里只列出 \(p=1,q=1\)\(p=0,q=2\) 的情况。

p=1,q=1

\[f_{1,1}(N,M,A,B)=\sum_{i=0}^{N-1}i\lfloor\frac{Ai+B}{M}\rfloor\\ S_1(x)=\sum_{i=0}^{x-1}i=\frac{x(x-1)}{2}\\ K=\lfloor\frac{A(N-1)+B}{M}\rfloor\\ c_i 同上\\ f_{1,1}(N,M,A,B)=\sum_{i=0}^{N-1}i\lfloor\frac{Ai+B}{M}\rfloor\\ =\sum_{k=0}^K k(S_1(c_{i+1})-S_1(c_i))\\ =KS_1(c_{K+1})-\sum_{k=1}^{K}S_1(c_k)\\ =K\frac{N(N-1)}{2}+\frac{1}{2}\sum_{k=0}^{K-1} \lfloor \frac{kM+M-B+A-1}{A}\rfloor -\frac{1}{2}\sum_{k=0}^{K-1} \lfloor \frac{kM+M-B+A-1}{A}\rfloor^2\\ =K\frac{N(N-1)}{2}+\frac{1}{2}f_{0,1}(K,A,M,M-B+A-1)-\frac{1}{2}f_{0,2}(K,A,M,M-B+A-1) \]

p=0,q=2

\[f_{0,2}(N,M,A,B)=\sum_{i=0}^{N-1}\lfloor\frac{Ai+B}{M}\rfloor^2\\ c_i 同上\\ f_{0,2}(N,M,A,B)=\sum_{i=0}^{N-1}\lfloor\frac{Ai+B}{M}\rfloor^2\\ =\sum_{k=0}^K k^2(c_{k+1}-c_k)\\ =K^2c_{K+1}-\sum_{k=1}^{K}(k^2-(k-1)^2c_k)\\ =K^2c_{K+1}-\sum_{k=1}^{K}(2k-1)c_k)\\ =K^2c_{K+1}-\sum_{k=0}^{K-1}(2k+1)c_k)\\ =K^2N-2\sum_{k=0}^{K-1}k \lfloor \frac{kM+M-B+A-1}{A}\rfloor +\sum_{k=0}^{K-1} \lfloor \frac{kM+M-B+A-1}{A}\rfloor\\ =K^2N-2f_{1,1}(K,A,M,M-B+A-1)-f_{0,1}(K,A,M,M-B+A-1) \]

Table

\[f_{0,0}(N,M,A,B)=KN-f(K,A,M,M-B+A-1)\]

\[f_{1,1}(N,M,A,B)=K\frac{N(N-1)}{2}+\frac{1}{2}f_{0,1}(K,A,M,M-B+A-1)-\frac{1}{2}f_{0,2}(K,A,M,M-B+A-1) \]

\[f_{0,2}(N,M,A,B) =K^2N-2f_{1,1}(K,A,M,M-B+A-1)-f_{0,1}(K,A,M,M-B+A-1) \]

参考

https://judge.yosupo.jp/problem/min_of_mod_of_linear

https://yukicoder.me/problems/no/2362

https://qiita.com/sounansya/items/51b39e0d7bf5cc194081

posted @ 2025-04-23 19:01  妖灵梦  阅读(81)  评论(0)    收藏  举报