Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion LeetCode/671-680/672. 灯泡开关 Ⅱ(中等).md
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ Tag : 「脑筋急转弯」、「找规律」
* 当 $k = 0$ 时,无论 $n$ 为何值,都只有起始(全 `1`)一种状态;
* 当 $k > 0$ 时,根据 $n$ 进一步分情况讨论:
* 当 $n = 1$ 时,若 $k$ 为满足「$k > 0$」的最小值 $1$ 时,能够取满「`1`/`0`」两种情况,而其余更大 $k$ 值情况能够使用操作无效化(不影响灯的状态);
* 当 $n = 2$ 时,若 $k = 1$,能够取得「`11`/`10`/`01`」三种状态,当 $k = 2$ 时,能够取满「`11`/`10`/`01`/`00`」四种状态,其余更大 $k$ 可以通过前 $k - 1$ 步归结到任一状态,再通过最后一次的操作 $1$ 归结到任意状态;
* 当 $n = 2$ 时,若 $k = 1$,能够取得「`00`/`10`/`01`」三种状态,当 $k = 2$ 时,能够取满「`11`/`10`/`01`/`00`」四种状态,其余更大 $k$ 可以通过前 $k - 1$ 步归结到任一状态,再通过最后一次的操作 $1$ 归结到任意状态;
* 当 $n = 3$ 时,若 $k = 1$ 时,对应 $4$ 种操作可取得 $4$ 种方案;当 $k = 2$ 时,可取得 $7$ 种状态;而当 $k = 3$ 时可取满 $2^3 = 8$ 种状态,更大的 $k$ 值可通过同样的方式归结到取满的 $8$ 种状态。
* 当 $n > 3$ 时,根据四类操作可知,灯泡每 $6$ 组一循环(对应序列 `k + 1`、`2k + 2`、`2k + 1` 和 `3k + 1`),即只需考虑 $n <= 6$ 的情况,而 $n = 4$、$n = 5$ 和 $n = 6$ 时,后引入的灯泡状态均不会产生新的组合(即新引入的灯泡状态由前三个灯泡的状态所唯一确定),因此均可归纳到 $n = 3$ 的情况。

Expand Down