回 帖 发 新 帖 刷新版面

主题:QB45,此题怎么做呀!

Matrix67和Shadow正在做一个小游戏。
  桌子上放着两堆糖果,Matrix67和Shadow轮流对这些糖果进行操作。
    在每一次操作中,操作者需要吃掉其中一堆糖果,
    并且把另一堆糖果分成两堆(可以不相等)留给对方操作。
    游戏如此进行下去,糖果数会越来越少,最后必将出现这样一种情况:
    某人吃掉一堆糖果后发现另一堆里只剩一块糖果不能再分了。
    游戏规定此时该操作者吃掉最后这一块糖果从而取胜。
  这个游戏是不公平的。对于任意一种初始状态,总有一方有必胜策略。
    所谓有必胜策略是指,无论对方如何操作,自己总有办法取胜。
  Matrix67和Shadow将进行10次游戏,每一次游戏中总是Matrix67先进行操作。
    Matrix67想知道每一次游戏中谁有必胜策略。
    输入数据: 输入数据一共10行,每行有两个用空格隔开的正整数,
              表示一次游戏开始时桌子上两堆糖果分别有多少个。
    输出数据: 输出十行字符串。这些字符串只能是“Matrix67”或“Shadow”,
              它们表示对应的十行输入数据中有必胜策略的一方。
    请注意大小写。
    如:输入: 1 1  
        输出: Matrix67

回复列表 (共13个回复)

11 楼

惭愧惭愧 我主要以为 1,1 是必胜结果不用考虑,后来我仔细想想 这么想不合适 不过改也容易 把 原文中的-2 都变成+3 就行了
input a,b
IF (a [color=ff0000]+3[/color]) MOD 5 < 2 AND (b [color=FF0000]+3[/color]) MOD 5 < 2 THEN PRINT "Shadow" ELSE PRINT "Matrix67"
end

12 楼

惭愧惭愧,我原来以为1,1是必赢的数,所以没有考虑,后来想这毕竟不完全符合题意啊,所以改下把原题中的-2都变成+3即可
input a,b
IF (a +3) MOD 5 < 2 AND (b +3) MOD 5 < 2 THEN PRINT "Shadow" ELSE PRINT "Matrix67"
end

13 楼

嗯,一袋烟聪明.

我来回复

您尚未登录,请登录后再回复。点此登录或注册