Warning: session_start(): open(/tmp/sess_e8ad3b028965e5ce5c6462d0ad2f735f, O_RDWR) failed: No space left on device (28) in /data/wiki/inc/init.php on line 239
Warning: session_start(): Failed to read session data: files (path: ) in /data/wiki/inc/init.php on line 239
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/auth.php on line 430
Writing /data/wiki/data/cache/8/8fe637ac40e9dfa91f93fbcd08d065e4.captchaip failed
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/Action/Export.php on line 103
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/Action/Export.php on line 103
Warning: Cannot modify header information - headers already sent by (output started at /data/wiki/inc/init.php:239) in /data/wiki/inc/Action/Export.php on line 103
====== 结论 3 ======
===== 1、等差序列判定 =====
给定一个序列 $a_1,a_2\cdots a_n$,则 $\max(a_i)-\min(a_i)\ge (n-1)\times \text{gcd}(a_2-a_1,a_3-a_2\cdots a_n-a_{n-1})$。
等号成立充要条件为 $a_1,a_2\cdots a_n$ 从小到大排列后可以构成等差序列。
证明:设 $g=\text{gcd}(a_2-a_1,a_3-a_2\cdots a_n-a_{n-1})$。
由于 $g\mid a_{i+1}-a_i,a_{i+2}-a_{i+1}\cdots a_j-a_{j-1}$,所以 $g\mid a_j-a_i$,得 $\text{gcd}(g,a_j-a_i)=g$。
于是 $g=\text{gcd}(a_i-a_j)(1\le i,j\le n)$。将 $a_i$ 从小到大排序得到 $b_1,b_2\cdots b_n$ ,则
$$
g\le \text{gcd}(b_2-b_1,b_3-b_2\cdots b_n-b_{n-1})\le \min(b_2-b_1,b_3-b_2\cdots b_n-b_{n-1})\le \frac {b_2-b_1+b_3-b_2\cdots +b_n-b_{n-1}}{n-1}=\frac {b_n-b_1}{n-1}
$$
即 $g\le \frac{\max(a_i)-\min(a_i)}{n-1}$。当 $a_i$ 构成等差序列时有 $\frac {\max(a_i)-\min(a_i)}{n-1}\mid g$,此时有 $\frac {\max(a_i)-\min(a_i)}{n-1}=g$。证毕。
===== 2、数值分配 =====
给定序列 $A$,要求构造序列 $B,C$ 使得:
- $a_i=b_i+c_i$
- 序列 $B$ 非严格单调递增(即不减)
- 序列 $B$ 非严格单调递减(即不增)
要求最小化 $\sum |b_i|+|c_i|$。则一定存在最优解满足 $b_{i+1}=b_i+\max(a_{i+1}-a_i,0),c_{i+1}=c_i+\min(a_{i+1}-a_i,0)$。具体见 [[https://atcoder.jp/contests/arc123/editorial/2321|证明]]。
===== 3、因子个数 =====
一个数 $n$ 的因子个数不超过 $O\left(n^{f(n)}\right)$,$f(n)$ 大致递减且 $n$ 比较大时可认为 $f(n)\le \frac 13$,例如 $n\le 10^{18}$ 时因子数至多在 $10^5$ 左右。
===== 4、加法运算 =====
$a+b=a|b+a\And b$