Re: 隨機產生固定列和與行和的0-1矩陣已回收

看板MATLAB作者 (煩..)時間15年前 (2010/12/29 19:58), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
i=0; while i~=1 a=zeros(3,7); c=randperm(21); %1~21 隨機排列 b=c(1:9); %取出前九個(隨機位置) a(b)=1; if sum(a(1,:))==3 & sum(a(2,:))==3 &sum(a(:,1))==1 ... &sum(a(:,2))==1 & sum(a(:,3))==1 & sum(a(:,4))==2 &sum(a(:,5))==1 & ... sum(a(:,6))==2 % 滿足時的條件 d=a; % d 為所求 i=1; end end 不知道有沒有更簡便的寫法~~ ※ 引述《kunlin999 (max)》之銘言: : 假設有一個0-1矩陣如下: : 0 1 1 0 0 1 0 : 1 0 0 1 0 0 1 : 0 0 0 1 1 1 0 : 可計算行和為 0 1 1 2 1 2 1 : 列和為3 3 3 : 是否可寫一程式隨機產生一個3*7的0-1矩陣 : 使得行和與列和都不變? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.25.118.178

12/31 11:28, , 1F
把行的順序打亂 或是把列的順序打亂 比較方便
12/31 11:28, 1F
文章代碼(AID): #1D6oA23n (MATLAB)
文章代碼(AID): #1D6oA23n (MATLAB)