[問題] 誰能幫個忙寫個程式.....
因為我們班接下來要去醫院實習
我們班有73個人分成6組
現在想有沒有一個程式可以讓大家盡量可以跟自己想在同一組ㄉ人在同一組
方式就是每個人都一自己喜好填72個志願
然後就下去跑.....
去年學長姐ㄉ方式是:
有個新的定義值假設為A
是對同一組其他組員的喜好排名的平方和除以其他組員的人數
這個程式的好處就在於他的解不是唯一的
當全班的A值的平均比上一個結果的A值平均小
以及全班A值最大的同學比上一次的A值小
新的分組結果就會取代舊的分組結果
那麼是怎麼分組的呢
先任意從全班同學取出六人編入六組
剩下的同學中就選出一個人編入第一組....現在第一組就有兩個人了
選出這個同學的條件是
把此同學排入第一組後第一組的兩名現有成員會有各自的A值
全班同學扣除任意選出的六位同學都排進去第一組
所以就第一組的現有兩人而言,會有很多種組合
如甲和乙,甲和丙,甲和丁,甲和戊....甲是第一組的被任意選入的人
甲和乙各有A值..
甲和丙也各有A值...
在同一組的現有成員中比較出A值的最大值
然後此最大值再和其他排入第一組的情況的最大值比較
也就是說四十幾種的第一組的最大值作比較
其中最小的狀況就是代表這個產生最小值的同學可以被排入第一組
然後再從剩下的同學中依照相同方式把同學排入第二組...第三組...第四組...
一輪結束之後....再從第六組...第五組...第四組...第三組...
依照同樣方式把人員排進去直到六組全部人員都排好了為止
然後程式會再進行直到可以找出最小的平均A值以及最大的A值為歷次最小
不過這個程式已經遺失了 而且好像聽說也不是寫ㄉ很好
基本上我是看不懂啦~~~誰可以幫幫忙寫個程式
感激不盡!!!!
----------------------
張張 甫神 還有其他願意幫忙ㄉ人出個聲吧!!!
--
※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw)
◆ From: 140.116.144.66
推
推140.112.230.111 05/06, , 1F
推140.112.230.111 05/06, 1F
推
推140.115.140.253 05/06, , 2F
推140.115.140.253 05/06, 2F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 14 篇):