поэтому эта программа предсказывает первый выигрышный ход знаменитой игры Нима. Мне просто нужно немного помочь выяснить эту проблему в коде. Входной файл читает что-то вроде этого.Как сделать лимит строк чтения первым номером в файле?
3
13 4 5
29 5 1
34 4 50
Первое число будет представлять количество строк, следующих за первой строкой, которую программа должна читать. Так что если дело было
2
**13 4 5
29 5 1**
34 4 50
было бы читать только следующие две строки, следующие за ним.
До сих пор это был прогресс моего кода
def main():
nim_file = open('nim.txt', 'r')
first_line = nim_file.readline()
counter = 1
n = int (first_line)
for line in nim_file:
for j in range(1, n):
a, b, c = [int(i) for i in line.split()]
nim_sum = a^b^c
if nim_sum == 0:
print ("Heaps:", a, b, c, ": " "You Lose!")
else:
p = a^nim_sum
q = b^nim_sum
r = c^nim_sum
if p < a:
stack1 = a - p
print ("Heaps:", a, b, c, ": " "remove", stack1, "from Heap 1")
elif q < b:
stack2 = b - q
print ("Heaps:", a, b, c, ": " "remove", stack2, "from Heap 2")
elif r < c:
stack3 = c - r
print ("Heaps:", a, b, c, ": " "remove", stack3, "from Heap 3")
else:
print ("Error")
nim_file.close()
main()
я преобразовал первый номер строки к междунар и попытался установить время цикла сначала с счетчиком, чтобы увидеть, что счетчик не будет перейдите выше значения n, но это не сработало. Итак, какие-то мысли?