首页 > 试题广场 >

斗兽棋

[编程题]斗兽棋
  • 热度指数:1337 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}牛牛和牛妹正在玩一个博弈游戏。每人可以选择一个棋子:`elephant`、`tiger`、`cat` 或 `mouse`。
\hspace{15pt}它们之间的胜负规则如下:
\hspace{23pt}\bullet `elephant` 吃 `tiger`;
\hspace{23pt}\bullet `tiger` 吃 `cat`;
\hspace{23pt}\bullet `cat` 吃 `mouse`;
\hspace{23pt}\bullet `mouse` 吃 `elephant`;
\hspace{15pt}如果一方的棋子能够吃掉另一方的棋子,则该方获胜;否则为平局。
\hspace{15pt}给定牛牛和牛妹所出的棋子,请判断比赛结果。

输入描述:
\hspace{15pt}在一行输入两个以空格分隔的字符串 s_1,s_2,其中 s_1,s_2 \in \{\texttt{,分别代表牛牛和牛妹所出的棋子。


输出描述:
\hspace{15pt}如果牛牛获胜,输出 \texttt{win};如果牛妹获胜,输出 \texttt{lose};如果平局,输出 \texttt{tie}
示例1

输入

tiger elephant

输出

lose

说明

牛牛出 `tiger`,牛妹出 `elephant`;大象吃老虎,牛牛落败,因此输出 `lose`。

备注:

d = {'mouse': 0, 'cat': 1, 'tiger': 2, 'elephant': 3}

n, m = input().split()

ret = d[n] - d[m]

if ret == 1&nbs***bsp;ret == -3:
    print('win')
elif ret == -1&nbs***bsp;ret == 3:
    print('lose')
else:
    print('tie')

发表于 2025-06-18 00:20:28 回复(0)
rules = {
    "elephant":"tiger",
    "tiger":"cat",
    "cat":"mouse",
    "mouse":"elephant"
}

s1,s2 = map(str,input().strip().split())

if rules[s1] == s2:
    print("win")
elif rules[s2] == s1:
    print("lose")
else:
    print("tie")

发表于 2025-06-08 13:30:53 回复(1)