Прошу Вас помочь найти ошибку в коде:
Задача (из Питонтьютора):
Август и Беатриса играют в игру. Август загадал натуральное число от 1 до n. Беатриса пытается угадать это число, для этого она называет некоторые множества натуральных чисел. Август отвечает Беатрисе YES, если среди названных ей чисел есть задуманное или NO в противном случае. После нескольких заданных вопросов Беатриса запуталась в том, какие вопросы она задавала и какие ответы получила и просит вас помочь ей определить, какие числа мог задумать Август.
В первой строке задано n — максимальное число, которое мог загадать Август. Далее каждая строка содержит вопрос Беатрисы (множество чисел, разделенных пробелом) и ответ Августа на этот вопрос.
Вы должны вывести через пробел, в порядке возрастания, все числа, которые мог задумать Август.
Моё предполагаемое решение:
n = int(input())
i = True
j = 'YES'
A, B = set(), set()
for x in range (1, n + 1):
A.add(x)
while i == True:
if j == 'YES':
B = ([int(s) for s in input().split()])
j = str(input())
elif j == 'NO':
A.difference(B)
j == 'YES'
elif j == 'HELP':
i == False
else:
print('Введена неверная команда')
break
print(' '.join([str(g) for g in sorted(A)]))
Но программа не работает.
Заранее большое спасибо!