python ccf题解 201903-2 二十四点

本文介绍了一种使用Python解决经典数学游戏二十四点的方法。通过预处理表达式并利用Python的eval()函数,该算法能够快速判断输入的算术表达式是否等于24。文章提供了完整的代码示例,展示了如何将除法符号转换为整除,以及如何将乘法符号x替换为Python中的乘法符号*。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

问题描述

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


代码

n = int(input())
a = []
for i in range(n):
    a.append(input())

for s in a:
    s = s.replace("/","//") # 除法换成整除
    s = s.replace("x","*") # x换成乘法*
    msum = eval(s) # 执行表达式得出运算结果
    if(msum == 24):
        print("Yes")
    else:
        print("No")

这里一个取巧的办法就是利用python强大的eval(),这个函数可以将内容直接作为表达式进行运算,先把表达式预处理成python表达式的形式,然后直接运算,岂不美哉ヾ(o・ω・)ノ

当然你也可以老老实实把运算符提取出来再自己做逻辑判断和运算。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值