真证明or假证明
查看原帖
真证明or假证明
1101254
Louisdlee楼主2024/5/19 10:43

我是否想假了?

通过维持某种东西不变来找必败态。

有两堆石子XX,YY(假设X<YX<Y)。

我们可以把一堆石子拿走 2i2i 个,并同时给另一堆加上 ii 个。

第一次变换:X+iX+i, Y−2iY-2i

可以发现,第一次变换是必然发生的。

假如最初的状态是必败态。

那么后手可以做什么来维持初始状态呢?

可以把第一堆拿走 2i2i 个,然后把另一堆加上 ii 个

第二次变换:X−iX-i,Y−iY-i

我们发现第二次变换后,两堆石子数量之差不变。

考虑必败态就是石子数量之差。

通过找简单的初始态来找必败态

  1. 当石子数量之差为 00。

X=1,Y=1X=1,Y=1 先手必败态

X=2,Y=2X=2,Y=2 ,第一次操作之后一定为X=3,Y=0X=3,Y=0,下一次操作之后变成X=1,Y=1X=1,Y=1的先手必败态。

若 X=YX=Y 是先手必败态,那么我们需要证明后手在先手进行任意一次操作后,总能变回 X=YX=Y 的状态。

这已经在上面证过了。

所以 ∣X−Y∣=0|X-Y|=0 是先手必败态。

  1. 当石子数量之差为 11。

X=1,Y=2X=1,Y=2 第一次操作之后一定为X=2,Y=0X=2,Y=0,第二次操作后一定为X=0,Y=1X=0,Y=1,先手必败。

所以∣X−Y∣=1|X-Y|=1先手必败

  1. 当石子数量之差为 2k2k。

考虑将 Y−X→Y′−X′=1Y-X\rarr Y'-X'=1 (Y′,X′Y',X'指的是一次操作之后的石子数量)。

我们不难发现每次变换操作一定会有:

Y,X→Y−2i,X+i→(Y−X−3i)=2k−3iY,X \rarr Y-2i,X+i\rarr (Y-X-3i)=2k-3i 条件是(Y-X>3i)$$....... 1

或

Y,X→Y−2i,X+i→(X−Y+3i)=3i−2kY,X \rarr Y-2i,X+i\rarr (X-Y+3i)=3i-2k 条件是(Y−X≤3i)(Y-X \leq 3i) .......2....... 2

所以,当石子数量之差为 22,那么可以利用式子 22,将其变为数量之差为 11 的先手必败态。

所以石子数量之差为 22,先手必胜。

石子数量之差为 2k2k 呢,显然可以利用条件 11 ,将其变为数量之差为 11 的先手必败态。

所以石子数量之差为 2k2k,先手必胜。

  1. 当石子数量之差是 3k3k 。

    因为 Y,X→Y−2i,X+i→(Y−X−3i)Y,X \rarr Y-2i,X+i\rarr (Y-X-3i)

    每一次石子数量之差都会减少3i3i。

    那么我们可以一次性将 Y−X=3kY-X=3k 变成 Y′−X′=0Y'-X'=0 。

    而 ∣X−Y∣=0|X-Y|=0 是先手必败态。

    所以 ∣X−Y∣=3|X-Y|=3 是先手必胜态。

  2. 当石子数量之差为 4k4k。这等价于2k2k

  3. 当石子数量之差为 5k5k。

我们不难发现每次变换操作一定会有:

Y,X→Y−2i,X+i→(Y−X−3i)=5k−3iY,X \rarr Y-2i,X+i\rarr (Y-X-3i)=5k-3i 条件是(Y-X>3i)$$....... 1

或

Y,X→Y−2i,X+i→(X−Y+3i)=3i−5kY,X \rarr Y-2i,X+i\rarr (X-Y+3i)=3i-5k 条件是(Y−X≤3i)(Y-X \leq 3i) .......2....... 2

换句话说,除了 33 的倍数,和两个必败态,其余任意一个数都可以由 3i−13i-1 或 3i+13i+1 变换成 11。

可以发现,总存在一个 ii,可以将Y′−X′Y'-X'变为 11

所以总结规律就是,∣X−Y∣≤1|X-Y|\leq1先手必败,否则先手必胜。

2024/5/19 10:43
加载中...