[答题赛第26轮答案和解析]
- 2019 年 10 月 6 日
- 筆記
假设用以下状态机图描述令狐冲施展剑法的情况,请问以下说法正确的个数是()

1) 如果令狐冲处在“甲丑”时被“撩”,令狐冲将到达“戊”。
2) 如果令狐冲处在“甲丑”时被“撩”,然后被“劈”,令狐冲将回到“甲丑”。
3) 如果令狐冲处在“甲丑”时被“撩”,然后被“刺”,令狐冲将回到“甲子”。
4) 如果令狐冲从来没有进入过“丁”,那么令狐冲处在“戊”时被“劈”,令狐冲将到达“丙子”。
A) 1个
B) 2个
C) 3个
D) 4个
【解析】答案D。
(1)对象处在状态“甲丑”,甲丑是“丁”的子状态。“撩”发生时,对象将迁移到“戊”。正确。
(2)接续(1),状态“丁”有一个浅历史状态和一个深历史状态(带*号的H),对象离开“丁”迁移到“戊”时,要记住浅历史状态“甲”(和“丁”同层)和深历史状态“甲丑”。对象处在状态“戊”时,发生“劈”事件,对象将迁移到深历史状态,即之前记住的“甲丑”。正确。
(3)接续(1),状态“丁”有一个浅历史状态和一个深历史状态(带*号的H),对象离开“丁”迁移到“戊”时,要记住浅历史状态“甲”(和“丁”同层)和深历史状态“甲丑”。对象处在状态“戊”时,发生“刺”事件,对象将迁移到浅历史状态,即之前记住的“甲”。而迁移到“甲”即迁移到缺省子状态“甲子”。正确。
(4)如果令狐冲从来没有进入过“丁”,意味着没有“丁”的历史。那么令狐冲处在“戊”时被“劈”,令狐冲将到达深历史状态所指的状态,即“丙”。而迁移到“丙”即迁移到缺省子状态“丙子”。正确。