如何用matlab写出一个矩阵 只有0和1 并且要求每行的和大于1 每一列的和等于1

2024-11-28 23:04:31
推荐回答(3个)
回答1:

每行的“1”至少2个;每列的“1”刚好1个;
从而这样的矩阵必然满足:列数n至少是行数m的2倍,及2m≤n。
m = 3; %再次输入行数.
n = 7; %再次输入列数.
d = floor(n/m);
r = n - m*d;
A = zeros(m,n);
for k = 1:d
A(:,(k-1)*m+1:k*m) = eye(m);
end
A(:,d*m+1:n) = eye(m,r);

回答2:

这样的矩阵只有单位矩阵才满足,A=eye(n)

回答3:

A[m,n]
n>2m