Форум » Динамическое программирование » Ошибка в задании 2353 » Ответить

Ошибка в задании 2353

VectorASD: Прога: [pre2] Arr = """15 43 23 44 85 19 72 67 36 80 100 48 92 64 91 61 71 2 82 74 69 9 12 9 91 52 94 58 69 42 53 42 18 58 93 55 48 76 18 13 49 63 16 13 45 6 81 19 53 63 49 53 23 44 61 2 2 63 88 16 2 75 100 27 72 64 95 49 51 84 64 68 17 16 18 2 30 57 86 6 64 84 53 19 23 91 82 2 2 59 72 47 56 85 9 26 47 48 91 91""" Arr = [tuple(map(int, i.split("\t"))) for i in Arr.split("\n")] #Перевод таблицы в нормальный вид print(Arr) Min = Max = None def Recurs(X, Y, Sum): global Min, Max Sum += Arr[Y][X] if X < 9: Recurs(X + 1, Y, Sum) if Y > 0: Recurs(X, Y - 1, Sum) if X == 9 or Y == 0: if Min == None or Min > Sum: Min = Sum if Max == None or Max < Sum: Max = Sum Recurs(0, 9, 0) print(Max, Min) [/pre2] Мой ответ: 1361 453 Их ответ: 1361 711 КАК max МОЖЕТ СОВПАСТЬ, А min - НЕТ! O_o O_o O_o O_o O_o O_o O_o Это законно? Решаю уже 6 вариант и только тут прога начинает не правильно работать, а ведь 5 вариантов подряд до этого 6 она робила O_o

Ответов - 1

VectorASD: ААА!!! Что вы молчите, что у меня OR вместо AND стоит в строке "if X == 9 or Y == 0: " Это пипец на сколько невзрачная ошибка в моём коде. Под микроскопом не увидишь Всё правильно было высчитано в задачке



полная версия страницы