У меня загадка для загадок, которую я хочу решить с помощью python. Они дают 4 номера (25, 28, 38, 35), и они хотят, чтобы мы поместили числа в ... + ...-... = ... Одно из возможных решений - 25 + 38-35 = 28. I've пытался, составьте список из чисел, перебирать их с некоторыми контурами и, если: LST = [25, 28, 38, 35]Python: итерация по списку
for z in lst:
for x in lst:
for c in lst:
for v in lst:
if z+x-c==v:
print z,x,c,v
Но когда Запускает для петель они повторяются числа (25 + 25-25 = 25), и это не работает. Как я могу это решить?
Посмотрите в itertools.permutations – user2097159
Совсем в стороне от лучшего способа посмотреть на все перестановки в Python, рассмотрит (путем добавления 'c' с обеих сторон уравнения), что вы ищете любые два значения из четырех, которые вместе составляют до половины суммы. Таким образом, вам не нужны все 24 перестановки, вы можете рассмотреть только 6 разделов: первые 6 значений из 'itertools.permutations (lst, 2)'. И если значения целые и сумма нечетна, то забудьте об этом :-) –