精華區beta SENIORHIGH 關於我們 聯絡資訊
我覺得一定要把這篇寫出來QQ 看到前面幾篇文章快嚇到尿出來了。 說不定一篇文章可以救很多人一命。 落點的邏輯如下=> 1.先讓所有考生錄取第一志願,不管分數。 2.再把各學系已經錄取到的人的"該學系加權後分數"按照降冪排序。 3.若錄取人數超過了該學系的最大人數,就會把分數最差的多餘的人給踢走。 4.被各學系踢走的人會全部強制錄取下一個志願(例如現在是第二志願)。 5.所有學系又會錄取到一批新的考生。然後再把所有考生的加權分依降冪排序。 (前面已錄取的人也要跟第二次被錄取的人一起重排!) 6.錄取人數如果有超過學系最大人數的話,就又得把分數最差的那些人再踢走。 7.不幸又被踢走的人,有可能是第一次沒被踢的!!總之被踢走的人們強制錄取下一志願。 (如果這些人是第一次被踢,那就是錄取第二志願。 如果是第二次被踢,就是錄取第三志願。) 8.重新排列各學系名單內名次,超過名單的人再被踢。 9.依此類推,各被踢學生再錄取下一志願。如果已經沒有下一個志願,則落榜。 還有同分比序問題,但是我認為不需要寫出來啦XD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.197.65 ※ 文章網址: https://www.ptt.cc/bbs/SENIORHIGH/M.1469506615.A.315.html
ron19971997 : 專業大推!!! 07/26 12:18
wayn2008 : 直接看最後這九點就好 前面略過...XD 07/26 12:18
Xuxxin : 先推免得人家說我看不懂 07/26 12:19
PaiChiou : 樓上,我發完文章才發現這件事情,可能寫code或是 07/26 12:19
PaiChiou : 解數學題習慣了,總是習慣先把定義先定義清楚 07/26 12:19
PaiChiou : 可是定義完大家都睡著了QQ 07/26 12:19
a29022792 : 假設我第一志願112 第二志願113 第三114 我第二次的 07/26 12:20
a29022792 : 時候被篩掉 會進到113篩還是114 07/26 12:20
各個考生被踢走,都是錄取該考生的下一志願序,跟系統執行第幾次篩選無關 也可以這樣說=> 如果考生是第一次被踢,則錄取該考生第二志願 如果考生是第二次被踢,則錄取該考生第三志願 如果考生是第N次被踢,則錄取該考生第N+1志願
wayn2008 : 前面數學有全形的也有半形的 覺得比較亂(?) 07/26 12:20
Sillyclown : 第5點是重點 表示順序不影響錄取機率 應該是這樣 07/26 12:22
Sillyclown : 解釋? 07/26 12:22
希望這篇高中生可以看懂?XDD
steak353 : 推 07/26 12:22
決定直接寫重點,前面全部砍光光XDD
Inciter49 : 看了兩次配上用筆畫一畫才懂 理解力低落QQ 07/26 12:31
Inciter49 : 所以這樣重複踢人的動作可能高達數十次以上嘛 (?) 07/26 12:33
如果你在問系統會踢人幾次的話? 基本上是超級多次,可能會超過100次。
HaLouis : 原po推定義和分析 07/26 12:33
wayn2008 : 可能踢了99次 你的第100個志願才上 07/26 12:35
以個人來說,沒錯
vmgj6qup6 : 第七點不太懂...? 07/26 12:37
系統第二次刷人的時候,有些人是被刷第一次,有些人被刷兩次了。 如果你第一次被刷,表示還沒讓你"試錄取"第二志願過,所以你會被試錄取第二志願 如果你第二次被刷,則是試錄取第三志願:)
benson861119: 我以為這是常識 沒想到這麼多高中生不懂QQ 07/26 12:37
有系組差異加權的分發比傳統基測型分發複雜很多,而且邏輯不太一樣。 傳統分發邏輯比較像是,先看第一高分的人的志願卡,再看第二高分的。
jaye8697 : 一句話總結:只比分數不管志願序 07/26 12:39
這句話講過一百萬次了,每年還是會有人好奇以及詢問XD 只好把Pseudo-code貼上來
ron19971997 : 其實蠻希望大大再把前面擺回去的 有圖片比較好懂阿 07/26 12:41
jasome : 有需要之前的編輯記錄 可以丟水球跟我說~ 07/26 12:42
PaiChiou : 其實我有備份XD 只是畫圖好累,只畫一張兩張半吊 07/26 12:43
PaiChiou : 子不完整,而且我畫得好亂嗚嗚 07/26 12:43
PaiChiou : 我想直接求個神人幫我畫圖XDD 07/26 12:43
s870158 : 那原住民+分的是另外統計嗎xd 07/26 12:44
rainy72647 : 覺得好懂先推XDDD 07/26 12:44
benson861119: 另外想問一個問題 第5點括號內是真的嗎?已錄取學校 07/26 12:47
benson861119: 的人不是會被排除嗎? 07/26 12:47
wayn2008 : 要重新排成績大小呀!不然低分就會在前面錄取了 07/26 12:49
wayn2008 : 只有系統把全部考生的100個志願跑完 才是真正錄取 07/26 12:49
wayn2008 : 所以在系統分發的"過程中" 錄取的狀態是假的 07/26 12:50
benson861119: 一時腦筋錯亂 感謝樓上大大解析 07/26 12:54
PaiChiou : 感謝樓上幫我解釋 07/26 12:54
scmdwyam : 清楚推 07/26 12:55
MLCCN : 推 07/26 12:56
ytou : 推! 標準code邏輯 07/26 12:57
sunrise1206 : 好懂推 07/26 13:01
BlueSpectrum: 大推大推 07/26 13:02
chanel92 : 意思是還是分數比較重要@@ 07/26 13:02
nojydia : 這有啥好講 就是照分數高低排 07/26 13:07
話說剛剛去搜了一下原來是同校學姊(菸
shh17121730 : 好心說明也能被噓,唉 07/26 13:08
以這個邏輯來說,算命文更不用發XDD
abc06 : 不是照分數高低排這麼簡單啊 因為一個人可以填 07/26 13:08
abc06 : 100個志願 而且每個系的加權又不一樣 07/26 13:08
abc06 : 看了這篇才知道Code是怎麼run的 07/26 13:09
v870608 : 那如果我第8志願和另一個人第2志願一樣那我分數比 07/26 13:10
v870608 : 較高是我會錄取嗎 07/26 13:10
這個問題很複雜,如果你分數較高,有四種outcome=> 1. 你錄取,他也錄取 2. 你錄取,他沒錄取 3. 都沒錄取。 4. "你在前七志願就被錄取",因此沒上第八,他有沒有錄取不關你的事情。 如果你在前7志願都沒被踢,肯定上不了第八志願。
robinyu85 : 推 超清楚的 以前都不知道XD 07/26 13:11
MADANDAN : 分數一樣,就看志願序,先填先上 07/26 13:13
這句話不對XD 因為同分有比序。 我沒有把同分比序寫出來是因為這樣P-code太複雜了 然後先填的確是會先上,但是在最後結果跑完之前的"試錄取"都沒有實質意義。
EtherealSil : 第五點的掛號看兩次才懂XD 07/26 13:14
w25707693 : 這有啥好噓的 你以為只有你懂?呵呵 07/26 13:17
MADANDAN : 看來認知還是有錯,謝謝指正> < 07/26 13:19
sabrinahi : 有推有上前10志願 (* ̄▽ ̄)/ ‧☆*"`'*-.,_,.-*'`" 07/26 13:22
sabrinahi : *-.,_☆ 07/26 13:22
幫樓上集氣!!一定要上政大!!
sabrinahi : 我要去112了辣 高中版首噓 07/26 13:24
119也不錯啊>_<
a2530720 : 第五點看好久才懂!謝謝整理! 07/26 13:29
jasome : 等這一篇討論完 再收錄精華區~ 謝謝分享! 07/26 13:31
sabrinahi : 119不錯啊 可是我志願前面填的是112咩 07/26 13:31
cradredtade : 穩定配對問題 07/26 13:33
s505015 : 同分會看學校要先評比哪些科目 07/26 13:43
nk930043 : 大概看懂了 07/26 13:43
partDu : 分發過程超清楚 謝謝分享! 07/26 13:51
delvinnew200: 我的理解是看該校系有多少人填 然後依分數高低取 07/26 13:52
delvinnew200: 出前面 07/26 13:52
delvinnew200: 跟招生人數符合的考生 07/26 13:53
delvinnew200: 來看是否可以入取該校系 這樣對嗎 哈哈哈 07/26 13:53
delvinnew200: 好複雜 07/26 13:53
QwQxError : 謝謝大大分享這個邏輯,真的很佩服寫這程式的開發人 07/26 13:54
這種演算叫做"穩定婚姻問題",或是上面說的"穩定配對問題"。 真正的Code是這樣的(改寫自維基) ============================================================ Function 登記分發 { 初始所有 m∈M 與 w∈W 當∃無校系 考生 m { w = m考慮的校系中排名最高的 若 w 有空位 錄取 m 否則 有些 m' 存在 若 w 只能錄取 m 不能接納 m' m被錄取 m' 被刷掉 否則 m'仍錄取 } } =============================================================
partDu : 可以向那些擔心因為志願填得太後面而被刷的人解釋了 07/26 14:00
※ 編輯: PaiChiou (220.137.197.65), 07/26/2016 14:06:45
partDu : 會落榜完全是因為分數輸別人 07/26 14:02
AUGnebulaUGA: 推 很清楚 07/26 14:09
※ 編輯: PaiChiou (220.137.197.65), 07/26/2016 14:15:18
vxior : Push清楚~一看就懂~ 07/26 14:37
yuanxin : 所以在填志願時有什麼技巧嗎 07/26 14:56
你問到重點了! 如果你被分發上第k個志願, 但是你發現k+i個志願(i>0)你更喜歡,那就填錯了。 也就是你的第k個志願要嚴格地比第k+1個志願更喜歡。 ※ 編輯: PaiChiou (220.137.197.65), 07/26/2016 15:00:07
skyrimrvks : 指考填法不就照想念的順序開始填 根本不用管其他的 07/26 14:59
jasonkao08 : 不懂的人真的ㄏㄏ 07/26 15:06
dbalruke : 有說跟沒說一樣 07/26 17:01
dbalruke : 前一個志願當然比後一個志願喜歡阿,廢話 07/26 17:02
partDu : 回d大,真的有人會抱著「至少要上」的心態 07/26 17:17
partDu : 把比較不喜歡的校系填前面 07/26 17:17
rosemoli : 就是不用管別人 順著自己的喜愛一路填好填滿 07/26 17:18
partDu : 但那當然是錯誤的,所以需要解釋 07/26 17:18
wayn2008 : 的確是有人呆呆的填錯了... 07/26 17:56
qazwsx869786: 好啊 07/26 17:57
csvt32745 : 雖然本就不難理解 但還是推一個 07/26 18:08
haruna405 : 推好心! 07/26 18:18
mine0630 : 謝原po 推推 07/26 18:39
weegee1219 : 推 07/26 18:57
lilithmay : 推 07/26 20:07
sodahsuan : 推 07/26 21:23