2
我想知道是否有一个有效的算法来生成0和1的长度为n的所有组合,给定最小和最大量1分的。生成给定长度的0和1的所有组合,给出最小和最大1的值
实施例:
N = 4分钟= 2最大= 3
0011 0101 1001 0110 1010 1100 (with 2 1's)
0111 1011 1101 1110 (with 3 1's)
我知道我可以以二进制从第(n-分钟)* 0(分钟)* 1到(最大计数)* 1(n-max)* 0(例如0011到1110)并且采取所有那些满足约束的那些,但是我想知道是否存在更有效的算法。
也许我误解了某些内容,但是如果按照您在链接中描述的策略获得: – rex123
@ rex123:我认为您的评论已被截断。 – rici
'0011 - > 0101 - > 1001 - > 1010 - > 1100 - > 0111 - > 1011 - > 1101 - > 1110'这意味着我错过了一些东西。我想我不明白如果'1'不是在'01'之后立即做什么的。 – rex123