from functools import reduce

def f(x):
	out = []

	for i, _ in enumerate(x):
		out.append(reduce(lambda p, q: p * q, x[:i] + x[i+1:]))
	return out

print(f([1, 7, 3, 4]))
assert f([1, 7, 3, 4]) == [84, 12, 28, 21]
