# 111 選手班 - 數學
###### tags: `宜中資訊` `CP`
2022.08.23
[109 slide](https://hackmd.io/@Ccucumber12/r19FPNMiI#/)
[110 slide](https://hackmd.io/@Ccucumber12/Hy8nj-fxt#/)
## Outline
- 模運算
- 基本運算
- 費馬小定理
- 模逆元
- 數論
- 質數
- 擴展歐幾里得算法
- 一次同餘方程
- 矩陣
- 基本運算
- 矩陣快速冪
- Nim
## Nim
### 題目
有 $N$ 堆石頭,其中第 $i$ 堆有 $a_i$ 顆石頭。兩個玩家輪由操作,每次可以選擇任意一堆拿走任意正整數顆石頭。最後無法操作(沒有石頭可以取)的玩家落敗。給定起始狀態,若兩方皆以最佳策略遊玩,請問先手還是後手贏?
### 簡化題目
- 剩 $1$ 堆:先手贏,直接拿走
- 剩 $2$ 堆
- 兩堆數量相同:後手贏,模仿前者動作
- 兩堆數量不同:先手贏,取成兩堆相同
### 圖論觀點
- 有向無環圖
- 必勝狀況 $\to$ 全部都是必輸狀況
- 必輸狀況 $\to$ 至少一個必勝狀況
### XOR
令 $t = a_1 \oplus a_2 \oplus \cdots \oplus a_n$
- 終點:所有石頭皆空 $t = 0$
- 前一步:至少有一堆石頭 $t \neq 0$
**引理一**
若 $t = 0$ 則下一步 $t' \neq 0$
**引理二**
若 $t \neq 0$ 則下一步有可能 $t' = 0$
定理:先手獲勝若且唯若 $t \neq 0$
其中 $t$ 又被稱作 nim 的**特徵值**
## 題單
[contest](https://vjudge.net/contest/511866)
password:`111apcs`