题目

100 本书,每次能够拿 1~5 本,怎么拿能保证最后一次是你拿 ?

解题思路:倒推对面如何必输

🚩拿 6 的倍数

我们倒着考虑如何让对面必输,让对面只能拿 95、96、97、98、99 对面就是必输。(只要我们拿 94 必胜

倒着看,其实拿 94 时,就决定胜负了。 100-6×1

假设 A 拿了 94,B 只能拿 95、96、97、98、99 , 下个回合,A 一定可以拿100。也就是说,拿 94 者必胜

再倒着看,其实拿 88 时,就定胜负了。 100-6×2

假设 A 拿了 88 ,B 只能拿 89、90、91、92、93 , 下个回合 A 一定能拿 94 。

再倒着看,其实拿 82 时,就定胜负了。 100-6×3

假设 A 拿了 82 ,B 只能喊 83、84、85、86、87 , 下个回合 A 一定能拿 88 。

….
再倒着看,其实拿 10 时,就定胜负了。 100-6×15

假设 A 拿了 10 ,B 只能拿 11、12、13、14、15 , 下个回合 A 一定能拿 16 。

再倒着看,其实拿 4 时,就定胜负了。 100-6×16

假设 A 拿了 4 ,B 只能拿 5、6、7、8、9 , 下个回合 A 一定能拿 10 。

最后发现谁先拿,谁一定赢

假设 A 先拿,直接拿 4 , 下个回合 A 一定能拿 10 。

推导式:

对于一个先手问题就是取余,假设 n 赢,每次操作只能操作 m 个,最终谁能赢,取决于谁第一个先拿到此数:2. 拿书本问题 - 图1 ,谁先拿到谁赢。