Re: [運算] 不盡相異物的排列

看板MATLAB作者 (Achilles)時間12年前 (2011/12/05 05:19), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串9/10 (看更多)
※ 引述《t007123 (林英傑後援會!!!)》之銘言: : 想請問兩個問題 : 第一個 : 現在有 1 -1 0 三個數下去做排列 : 但是我 1 -1要綁在一起 而且是1後面一定要接 -1 : 然後跟0下去排 我有試過令p=[1,-1] 然後perms(p p p 0) : 但matlab把p視為可分開的 我現在可能無法用暴力解 : 因為我想跑到18個以上 1 -1 0排列 XDD : 請問有什麼方法嗎? 這我以前寫過, 用 dynamic programming. 首先, 把 {1, -1} 看成一個 symbol, 0 是另一個 symbol. Let's call it a and b. so, if you only have two elements, it will be [a b] and [b a]. Now, if you have one more element, let's call it c, the perm will be [c [a b]], [c [b a]], [[a b] c], [[b a] c] Since you already have the result of perm [a b], [b a], You can calculate the perm [a b c] efficiently by dynamic prog. But the total number is still very large, if you are asking {1 -1 0} repeatly 6 times (18 elements total) the number will be ( 12! / (6! 6!) )* 2^6 It's.. huge. : 第二個 : 手邊有個研究是 五邊形頂點有五個箱子 編號A B C D E 照順序放至頂點 : 要放數字1~25 不可重複 假設從箱子A放數字1 : 則數字2只能放在臨近得箱子 例如: 箱子B 箱子E : 以此類推將所有數字擺放進去 每個箱子數字各數可不同 : 如何將所有的方法都表示出來 : 第二個問題我想matlab會做不下去 太大了 QQ : 請各位先進能幫助小弟 感謝 這題用 graph 來做啊.. Travel path with length 25 in a 5 node graph -- 趙客縵胡纓,吾鉤霜雪明。銀鞍照白馬,颯沓如流星。 十步殺一人,千里不留行。是了拂衣去,深藏身與名。 閑過信陵飲,脫劍膝前橫。將炙啖朱亥,持觴勸侯贏。 三杯吐然諾,五嶽倒為輕。眼花耳熱後,意氣素霓生。 就趙揮金錘,邯鄲先震驚。千秋二壯士,烜赫大梁城。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 76.170.76.14
文章代碼(AID): #1Es-FDc8 (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1Es-FDc8 (MATLAB)