python - codechef问题中的错误,手动检查了测试用例,当时没有显示任何错误
问题描述
m = list(input().split(" "))
a = int(m[0])
b = float(m[1])
if(a%5==0 and a<b):
y = (b-a-0.50)
print('%.2f' %y)
else:
print(b)
键入此代码并检查问题中的三个测试用例,没有收到错误,但在提交时显示错误。
Pooja 想从 ATM 取款 X 美元。取款机只接受X为5的倍数,且Pooja账户余额有足够现金进行取款交易(包括银行手续费)的交易。对于每次成功取款,银行收取 0.50 美元的费用。尝试交易后计算 Pooja 的账户余额。
解决方案
在您的 else 语句中,您没有在小数点后放置两位数:
print('%.2f' %b)
此外,您需要确保您的余额可以处理交易和费用:
m = list(input().split(" "))
a = int(m[0])
b = float(m[1])
if(a%5==0 and a + 0.5 <= b):
y = (b-a-0.50)
print('%.2f' %y)
else:
print('%.2f' %b)
推荐阅读
- python - 当 Selenium 尝试重新连接到现有会话浏览器时,如何修复“ConnectionRefusedError: [WinError 10061]”?
- procmail - procmail:调节多个字段
- jsp - org.hibernate.collection.internal.PersistentSet' 没有属性 'size'
- firebase - 此应用无权使用 Firebase 身份验证 - 注册
- php - PhpMailer 似乎无法将邮件发送到 Outlook
- javascript - 在 Javascript 中删除和克隆 DOM 元素
- java - 代码完成停止为“Java 扩展包”工作
- selenium - Selenium 抓取 JS 加载的页面
- puppet - 在 Puppet 5 中循环导致重复声明错误
- python - Python 和 PostgreSQL - 检查多插入操作