欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

CSP201903-2 二十四点(Python)

程序员文章站 2022-04-28 20:41:52
文章目录题目程序代码题目试题编号:201903-2试题名称:二十四点时间限制:1.0s内存限制:512.0MB题目背景  二十四点是一款著名的纸牌游戏,其游戏的目标是使用 3 个加减乘除运算使得 4 张纸牌上数字的运算结果为 24。题目描述  定义每一个游戏由 4 个从1-9的数字和 3 个四则运算符组成,保证四则运算符将数字两两隔开,不存在括号和其他字符,运算顺序按照四则运算顺序进行。其中加法用符号+表示,减法用符号-表示,乘法用小写字...

文章目录

题目

试题编号: 201903-2
试题名称: 二十四点
时间限制: 1.0s
内存限制: 512.0MB

题目背景
  二十四点是一款著名的纸牌游戏,其游戏的目标是使用 3 个加减乘除运算使得 4 张纸牌上数字的运算结果为 24。

题目描述
  定义每一个游戏由 4 个从1-9的数字和 3 个四则运算符组成,保证四则运算符将数字两两隔开,不存在括号和其他字符,运算顺序按照四则运算顺序进行。其中加法用符号+表示,减法用符号-表示,乘法用小写字母x表示,除法用符号/表示。在游戏里除法为整除,例如 2 / 3 = 0,3 / 2 = 1,4 / 2 = 2。
  老师给了你n个游戏的解,请你编写程序验证每个游戏的结果是否为 24。

输入格式
  从标准输入读入数据。
  第一行输入一个整数n,从第2行开始到第n+1行中,每一行包含一个长度为7的字符串,为上述的 24 点游戏,保证数据格式合法。

输出格式
  输出到标准输出。
  包含n行,对于每一个游戏,如果其结果为 24则输出字符串 Yes,否则输出字符串 NO。

样例1输入
  10
  9+3+4x3
  5+4x5x5
  7-9-9+8
  5x6/5x4
  3+5+7+9
  1x1+9-9
  1x9-5/9
  8/5+6x9
  6x7-3x6
  6x4+4/5

样例1输出
  Yes No No Yes Yes
  No No Yes Yes

样例1 解释
  9+3+4×3=24
  5+4×5×5=105
  7-9-9+8=-3
  5×6/5×4=24
  3+5+7+9=24
  1×1+9-9=1
  1×9-5/9=9
  8/5+6×9=55
  6×7-3×6=24
  6×4+4/5=24

子任务
CSP201903-2 二十四点(Python)

程序代码

# 输入游戏解的个数
n = int(input())

# 输出列表
output = []

# 循环输入运算符替换并计算结果
for i in range(n):
    order = input().replace('x','*').replace('/','//')
    if eval(order) == 24:
        output.append('Yes')
    else:
        output.append('No')

# 输出结果
for i in range(n):
    print(output[i])

本文地址:https://blog.csdn.net/qq_45899597/article/details/114004773