Вот код:
import itertools
num_cases = int(input())
answer_list = []
while num_cases>0:
live_ans = []
question_list = []
nums = int(input())
d1 = int(input())
d2 = int(input())
sample_space= {d1, d2}
temp = []
no_cases = 2**(nums-1)
combs = itertools.product(sample_space, repeat = nums-1)
for i in combs:
temp.append(i)
for i in temp:
if sum(i) not in live_ans:
live_ans.append(sum(i))
else:
pass
live_ans.sort()
answer_list.append(live_ans)
num_cases -= 1
for i in answer_list:
finalans = " ".join(map(str, i))
print(finalans)
Для небольших вводов, таких как:
1
3
1
2
Программа работает просто отлично.Где для относительно большего ввода, такого как:
1
58
69
24
Это дает ошибку памяти.Я не привожу никаких причин для этого, так как код не выглядит потребляющим память вообще.Не так ли?