Office 板


LINE

※ 引述《hwangshan (尿布超人)》之銘言: : 軟體:Excel : 版本:2010 : 問題: : 已知手上有5個數字,分別為1、3、3、9、0, : 要列出這5個數字的所有排列方式, : 例如3、1、3、9、0 : 格式如下圖 : https://i.imgur.com/AEBqzSa.png : 小弟剛接觸excel,還請不吝指教。 老實說,我沒想到答案這麼困難且複雜~ 所以我重新發問好了,正才是我真正要問的問題,也許就不需要那麼複雜的計算式~ 以數學來表達我的問題的話,就是 A1+A2+A3+A4=16 且 B1+B2+B3+B4+B5+B6=5 ,求A1~A4、B1~B6之所有非負整數解 而應用上,總合值16和總合值5,是由使用者輸入的變數。 非負整數解的個數很簡單,就是H(4,16)乘上H(6,5) 基於此,首先我先思考該怎麼列出所有A1+A2+A3+A4=16的所有非負整數解 翻翻小時候的課本,得知可以等效成這樣規律的方式來找出所有解 11111+1+1111+111111=(5,1,4,6) +111111+11+11111111=(0,6,2,8) 以此類推 就是把問題變成排列16個"1"和3個"+",之後就能轉換成我要的所有非負整數解了 基於這個邏輯,我昨天才會問那個問題,因為只要有排列函式就能解決了 但是昨天板上大大提供的運算式太難了,我完全不知道該從何修改 所以我在想,也許我是繞了遠路了,這樣把整個問題丟出來也許能得到比較簡單的算法 畢竟實際上,排列的元素只有"1"和"+"這2個 最後,我再次把問題重提一次 以數學來表達我的問題的話,就是 A1+A2+A3+A4=16 且 B1+B2+B3+B4+B5+B6=5 ,求A1~A4、B1~B6之所有非負整數解 而應用上,總合值16和總合值5,是由使用者輸入的變數。 https://i.imgur.com/cLnNBJq.png PS.其實個人覺得也許VBA會比較容易解決問題,目前小弟正在往VBA研究中 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.134.1.81
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1537449813.A.859.html
1F:→ newacc: 從排列組合變成規劃求解了XDD 09/20 22:45
解法還是排列啦~ 就排列16個"1"和3個"+"的轉換結果,然後每個結果重複H(6,5)次,每個結果的右手邊排列 5個"1"和5個"+"的轉換結果 我覺得應該是這樣解的,然而我卡在排列部分,所以先前才問排列的算法 ※ 編輯: hwangshan (220.134.1.81), 09/20/2018 23:18:50
2F:推 newacc: 如果要用VBA的話我會選擇For Loop硬爆 09/20 23:35
3F:推 newacc: http://bit.ly/2MQqfoS 連結是我的google drive空間 09/21 00:06
4F:→ newacc: 用VBA反而不需要太鑽研排列組合的邏輯,就是一個乖乖窮舉 09/21 00:09
5F:→ newacc: 的概念XD 09/21 00:10
6F:→ newacc: 16,5大約有24萬筆資料,我電腦測50微秒跑完全部資料,然後 09/21 00:16
7F:→ newacc: 花2秒半寫進格子裡XD 09/21 00:16
8F:→ newacc: A4賦值那行應該移到For A3迴圈裡才對,不需要算那麼多次 09/21 00:20
9F:→ newacc: 但不管怎樣瓶頸就是寫進硬碟的速度 09/21 00:21
寫好快~ 我回家再來看看你寫的,謝謝你 ※ 編輯: hwangshan (220.134.1.81), 09/21/2018 12:59:05 喔喔!關鍵邏輯真好懂 ※ 編輯: hwangshan (220.134.1.81), 09/21/2018 18:43:28 請問, 1.你的choose,那是排列組合中的C取樣吧? 既然你是自己寫的, 代表VBA中沒有該函式囉? 2.你的第一行 Range("D1").Resize(1, 11).EntireColumn.Delete 由於每次計算前都會先清空,導致沒辦法引用這邊計算出來的數字 請問除了將這行隱藏起來之外,有別的辦法嗎? ※ 編輯: hwangshan (220.134.1.81), 09/22/2018 02:48:30
10F:推 newacc: 1.對,不過後來想想不要叫choose比較好,excel裡已經有同 09/22 12:54
11F:→ newacc: 名的函式了。至於excel有沒有排列組合的公式,老實說我沒 09/22 12:54
12F:→ newacc: 有認真找XD 09/22 12:54
13F:→ newacc: 2.清掉是為了放接下來跑出來的結果,你也可以把這行刪掉, 09/22 12:57
14F:→ newacc: 然後把新的資料放到更右邊的欄位裡,就可以留之前的結果了 09/22 12:57
15F:→ newacc: 或應該也可以把刪除改成插入,這樣後面的位置也不用調整 09/22 13:00







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP