问题是这个https://projecteuler.net/problem=67
我不明白为什么这会给出一个错误的答案-6580,而它应该是7273。你知道吗
我们的想法是看下一行中相邻的数字 看哪个高一点,把那个加起来。所以我比较了位置j和位置j+1的数字。 如果它们相等,那么它将进入下一行并比较接下来的3个数字,但是它不会遇到2个相等的数字,所以我删除了处理这个问题的代码。你知道吗
数据是一个列表,每个位置都有一个列表,其中每个三角形都有一行
data = open('triangulo.txt', 'r')
data = data.readlines()
j = 0
soma = int(data[0].strip())
for i in range(1,100):
if int(data[i].strip().split()[j])==int(data[i].strip().split([j+1]):
print('fodfsf') #this is just to see if there are any numbers equal to each other
if int(data[i].strip().split()[j])>int(data[i].strip().split()[j+1]):
soma = soma + int(data[i].strip().split()[j])
else:
soma = soma + int(data[i].strip().split()[j+1])
j = j + 1
print(soma)
考虑以下三角形。你知道吗
对于这个三角形,你的算法认为最大路径是什么?你知道吗
你将需要找到一种不同的方法来解决这个问题,但这只是projecteuler问题的一半乐趣。你知道吗
相关问题 更多 >
编程相关推荐