【华为机试真题 Python】阿里巴巴找黄金宝箱
题目描述
一贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0~N的箱子,每个箱子上面贴有一个数字,箱子中可能有一个黄金宝箱。
黄金宝箱满足排在它之前的所有箱子数字和等于排在它之后的所有箱子数字之和;
第一个箱子左边部分的数字和定义为0;最后一个箱子右边部分的数字和定义为0.
请帮阿里巴巴找到黄金宝箱,输出第一个满足条件的黄金宝箱编号,如果不存在黄金宝箱,请返回-1。
输入描述
箱子上贴的数字列表,使用逗号分隔,例如1,-1,0
宝箱的数量不小于1个,不超过10000
宝箱上贴的数值范围不低于-1000,不超过1000
输出描述
第一个黄金宝箱的编号
参考示例
示例1
输入
2,5,-1,8,6
输出
3
示例2
输入
8,9
输出
-1
示例3
输入
11
输出
0
参考代码
# 输入获取
arr = list(map(int, input().split(",")))
# 算法入口
def getResult():
leftSum = 0
rightSum = sum(arr) - arr[0]
if leftSum == rightSum:
return 0
for i in
还没有评论,来说两句吧...