所以我选择行长度,比如n,每行只包含0和1,并且至少有k 1。我想在Matlab中有一个包含所有可能组合的矩阵。
例如,n = 3 k = 2:
1 1 0
1 0 1
0 1 1
1 1 1
答案 0 :(得分:3)
您可以使用dec2bin
创建所有位模式,然后仅保留具有正确数量1
s的模式:
n = 3; k = 2;
allCombs = dec2bin( (2^k-1):(2^n-1) ) - '0'; % use -'0' to convert to integers
outCombs = allCombs(sum(allCombs, 2) >= k, :);
outCombs =
0 1 1
1 0 1
1 1 0
1 1 1