我试图生成所有的N+1
整数集n_j
,这样
n_0 < n_1 < ... < n_N
其中每个n_j
运行在某个间隔:n_min <= n_j < n_max
。你知道吗
我当前的解决方案:
def generate_partitions(nmin, nmax,N):
n0 = range(nmin, nmax)
return (x for x in itertools.product(n0, repeat=N+1)
if len(set(x)) == N+1 and list(x) == sorted(x))
虽然有效,但显然相当愚蠢。我觉得应该有一个更好的基于itertools
的解决方案,但到目前为止我还没有弄清楚,如果有任何提示或提示,我将不胜感激。你知道吗
那
itertools.combinations(range(nmin, nmax), N + 1)
呢?你知道吗相关问题 更多 >
编程相关推荐