-10
私は整数のリストを持っています。例えば、[2,3,4]のように、これらの整数のすべての可能な乗算の結果を使ってリストを拡張したいと思います。この場合、6,8,12,24になります。どうすればいい?私がこれをやりたいリストには16個の項目があるので、この場合のアルゴリズムは私の場合には良い解決策ではないかもしれません。ここでこれをPythonで行う方法はありますか?
私は整数のリストを持っています。例えば、[2,3,4]のように、これらの整数のすべての可能な乗算の結果を使ってリストを拡張したいと思います。この場合、6,8,12,24になります。どうすればいい?私がこれをやりたいリストには16個の項目があるので、この場合のアルゴリズムは私の場合には良い解決策ではないかもしれません。ここでこれをPythonで行う方法はありますか?
は(唯一の電池が:-)モジュールが含まれて)基本的なPythonでのソリューションです:
import itertools, functools
lst = [2,3,4]
comb = [itertools.combinations(lst, n) for n in range(2, len(lst) + 1)]
lst2 = []
for seq in itertools.chain(*comb):
lst2.append(functools.reduce(lambda x, y: x * y, seq))
print(lst2)
出力:
[6, 8, 12, 24]
ありがとうございます! – user6708727
それは、任意の言語 – yossico
非特異的なタイトルで行うことができます。最小の実例や疑似コードはありません – buhtz