杭州 Day 4 下午 简单数学

数学问题

初等数论

  • \(a | b\)\(a\) 整除 \(b\),也就是 \(a\)\(b\) 的因数,\(b\)\(a\) 的倍数,\(b = ka\)

  • 取模 取整:\(b = ka + r\),其中 \(0 ≤ r < a\),则称 \(⌊\frac{b}{a}⌋ = k\)\(b \mod a = r\)

  • 整数唯一分解定理:每个整数 \(n\) 可以唯一的写成 \(\prod p_i^{k_i}\) 的形式,其中 \(p_i\) 是第 \(i\) 个质数。

  • $ lcm (a, b) \times gcd(a, b) = a \times b \(,(本质:\)max(a,b)=a+b-min(a,b)$)

  • \(Min-Max\) 容斥:\(\max_{x∈S} x = \sum_{∅≠T⊆S}(-1)^{|T|-1} \min _{x∈S}x\)

  • 扩展 \(Min-Max\) 容斥:\(kth \ max(S) = \sum_{∅≠T⊆S}(-1)^{|T|-k} C_{k-1}^{|T|-1} min(T)\)

  • \(lcm(s)=\prod_{∅≠T⊆S} gcd(T)^{{(-1)}^{|T|-1}}\)

  • \(gcd(x^a -1 , x^b -1 )=x^{gcd(a,b)-1}\)

  • \(Fibonacci\) 数列相邻两项互质。\(F(n) = F(m)F(n − m − 1) + F(m − 1)F(n − m)\)

  • 对于斐波那契数列,\(gcd(F(a), F(b)) = F(gcd(a, b))\)

  • 费马小定理:当 \(p\) 是质数,\(p ∤ a\) 时,\(a^p−1 ≡ 1 (mod\) \(p)\)

  • 扩展欧拉定理:\(当 gcd(a, m)≠1 时\),有 \(a^k ≡ a^{min (k,k\mod φ(m)+φ(m))}(mod\) \(m)\)

Miller-Rabin

Almost \(O(\log n)\) 近似判断一个数是不是质数。

如果 \(p\) 是质数,设 \(p − 1 = d × 2^r\),则对于 \(a < p\),有

\(a^d ≡ 1 (mod\) \(p) ∨ ∀0 ≤ i < r, a^{d\times 2^i}≡ −1 (mod\) \(p)\)

\(long\) \(long\) 范围内,取 \(a ∈ {2, 3, 5, 7, 13, 29, 37, 89}\) 依次检验,保证不出错

整除分块

一般用于对于所有的 \(1 ≤ i ≤ n\),处理关于 \(⌊\frac{n}{i}⌋\) 的相关问题。

算法基于 \(⌊\frac{n}{i}⌋\) 只有 \(O(√n)\) 种取值。

流程如下,初始 \(l = 1\)

  1. 这一段的整除值计算为 \(val = ⌊\frac{n}{l}⌋\)
  2. 这一段的右端点为 \(r = ⌊\frac{n}{val}⌋\)
  3. 处理完 \([l,r]\) 的信息后,\(l ← r + 1\),继续处理下一段,超过 \(n\) 就退出。

博弈论

\(n\) 堆石子,分别有 \(a_1, a_2, · · · , a_n\) 个,每次从某一堆中拿走若干个,两人轮流操作,不能操作者输。

必胜态:\(a_1 ⊕ a_2 ⊕ · · · ⊕ a_n ≠ 0\)

对于阶梯 Nim 游戏,即有 每次从第 \(i\) 堆中拿走若干个放进第 \(i − 1\) 堆,看作只保留所有奇数堆进行的 Nim 游戏解决。

Anti-Nim 游戏:

先手必胜的条件为:

    1. 每堆都是 \(≤ 1\) 个,异或和为 0
    1. 存在某堆 \(> 1\) 个,异或和不为 0
posted @ 2024-10-23 09:09  PassName  阅读(3)  评论(0编辑  收藏  举报