前言
继续更新
正文
在上一篇文章中,定义了超实数
{
l
∣
r
}
\{l|r\}
{l∣r}这个运算
也了解了通过超实数对博弈状态的定义
但是,还有很多的特殊情况没有考虑过
特殊状态“ * ”
当
l
=
r
=
0
l=r=0
l=r=0的时候,我们会发现,已经没有满足条件的结果了
但是根据需要,博弈中会出现这样的情况
两个子状态都是先手必败态,那么答案是什么呢,那很显然是先手必胜态,由于无法用超实数表示,所以我们要另辟蹊径
∗
=
{
0
∣
0
}
*=\{0|0\}
∗={0∣0}
这个状态表示先手必胜态,那么根据定义,我们有
0
=
{
∗
∣
∗
}
0=\{ *|*\}
0={∗∣∗},这样一来就成功解决这个问题了,
∗
*
∗小于所有正数,大于所有负数,和
0
0
0无法比较
定义好了
∗
*
∗,当然也要定义好与
∗
*
∗相关的运算
“
∗
*
∗”与一个正数或负数: 由于我们定义好了
∗
*
∗的相对大小关系,所以已经完成了
“
∗
*
∗”与“
∗
*
∗”: 与自己运算的结果已经给出,
{
∗
∣
∗
}
=
0
\{*|*\}=0
{∗∣∗}=0
“
∗
*
∗”与
0
0
0: 好像没有给出,所以需要定义新的状态
特殊状态“ ↑ \uparrow ↑” 、“ ↓ \downarrow ↓”
↑
=
{
0
∣
∗
}
\uparrow=\{ 0 | ∗ \}
↑={0∣∗}
↓
=
{
∗
∣
0
}
\downarrow=\{ ∗ | 0 \}
↓={∗∣0}
我们现在来看“
↑
\uparrow
↑”与“
↓
\downarrow
↓”的一些性质
对于“
↑
\uparrow
↑”,容易看出“
↑
\uparrow
↑”是第一个玩家必胜态,所以
↑
>
0
\uparrow>0
↑>0
另外,“
↑
\uparrow
↑”小于每一个正数(有证明,但要用到这种定义下的加法),所以类似于“
↑
\uparrow
↑”就好像正无穷小(
0
+
0^+
0+)
对于“
↓
\downarrow
↓”,容易看出“
↓
\downarrow
↓”是第一个玩家必败态,所以
↓
<
0
\downarrow<0
↓<0
类似于“
↑
\uparrow
↑”,“
↓
\downarrow
↓”大于每一个负数,所以
↓
↓
↓可以近似看作负无穷小(
0
−
0^-
0−)
新定义了那么多东西, { l ∣ r } \{ l | r \} {l∣r}在博弈中的很多运算就差不多解释完了
整理
左边的
Φ
<
\Phi<
Φ<负数
<
↓
<
0
,
∗
<
↑
<
<\downarrow<0,*<\uparrow<
<↓<0,∗<↑<正数
<
<
<右边的
Φ
\Phi
Φ
对于运算
{
L
∣
R
}
\{ L | R \}
{L∣R}可以转化为
{
m
a
x
(
L
)
∣
m
i
n
(
R
)
}
\{max(L)|min(R)\}
{max(L)∣min(R)}(L,R都是集合)
也就转化到了
{
l
∣
r
}
\{ l | r \}
{l∣r}的问题了(l、r都是单个数)
如果
l
<
r
l < r
l<r那么
{
l
∣
r
}
\{ l | r \}
{l∣r}的结果:
- 超实数运算
若 l 、 r l、r l、r之间有整数, { l ∣ r } = x \{l|r\}=x {l∣r}=x( l < x < r l < x < r l<x<r且 x x x是所有满足的数中离 0 0 0最近的整数)
若 l 、 r l、r l、r之间无整数, { l ∣ r } = x / y \{l|r\}=x/y {l∣r}=x/y( l < x / y < r l < x/y < r l<x/y<r且 y = 2 k ( k ∈ Z ∗ ) y=2^k(k\in\Z^*) y=2k(k∈Z∗)且y是所有满足条件的数中最小的数,x是在满足前面的条件下的可取值中离 0 0 0最近的整数 - 特殊运算
0 = { ∗ ∣ ∗ } 0=\{ *|*\} 0={∗∣∗}
∗ = { 0 ∣ 0 } *=\{ 0|0\} ∗={0∣0}
↑ ↑ ↑={ 0 | ∗ ∗ ∗ }
↓ ↓ ↓={ ∗ ∗ ∗ | 0 }
总结
知道上述的定义,差不多就能解决所有的这一类的OI题目了,但是考虑 0 ∣ ↑ {0|↑} 0∣↑之类的结果是什么呢,在这里还无法解释,理解上述内容其实已经够用了,但是学一样东西就要学透,所以在下一篇文章中我会写到加法运算的定义,当然先理解这篇文章的内容是最重要的,当然我所写的并不十分严谨,如果有问题敬请提出,记录(二)到这里就结束了
update by 2019.1.9:感觉我以前写的很乱啊,更新一下格式,并且根据理解迁移了一些内容