python - 对于这个问题,我得到了错误的答案:Hackerrank
问题描述
Raghu 是一家鞋店老板。他的商店有 X 只鞋子。他有一个清单,其中包含他店里每双鞋的尺码。有 n 个顾客愿意支付 y
仅当他们获得所需尺寸的鞋子时才需要多少钱。
你的任务是计算赚了多少钱。
我知道这个问题对你们所有的开发人员来说似乎都没用。但我是编程和 python 的初学者。所以,请帮帮我。我已经尝试了很多次,但我能得到的唯一答案是 0。这是我的解决方案:
from collections import Counter
numshoes=int(input())
shoes=Counter(map(int,input().split()))
numcust=int(input())
income=0
for i in range(numcust):
size,price=input().split()
if(shoes[size]>0):
income+=price
shoes[size]-=1
else:
pass
print(income)
输入:
10
2 3 4 5 6 8 7 6 5 18
6
6 55
6 45
6 55
4 40
18 60
10 50
你的输出(标准输出)
0
预期产出
200
这是我得到的输出。
解决方案
size
并且price
是字符串。在增加收入之前将它们转换为整数,就像你对shoes
.
(作为忠告,我建议自己解决 Hackerrank 问题,因为它的目的是挑战。)
推荐阅读
- python - on_raw_reaction_add() 每条消息只工作一次吗?
- c - 使用指针算法对数组进行排序
- android - 一个多因素如何对 API 进行身份验证?
- javascript - html中的随机javascript图像
- windows - 为什么characteristic.ReadValueAsync() 有时会抛出ObjectDisposedException?
- c# - 什么是匹配逗号-引号-逗号的正则表达式?
- android - 中心裁剪比例类型在 android 图像视图中不起作用
- java - 如果文件行以 001 开头,则将最后一行转换为字符串 JAVA
- java - 如何递归删除非搜索二叉树的节点?
- sql - SQL 对不同日期范围的行求和