[問題] 曹操傳新加入武將等級
※ [本文轉錄自 Old-Games 看板]
作者: wangwii (~螞蟻~) 看板: Old-Games
標題: [問題] 曹操傳新加入武將等級
時間: Sat Dec 6 13:39:15 2008
小弟我找了好久,結果發現有兩個算法
不知道有沒有人知道哪個是正確的
A 所有武將等級為降序排列的情況下:
新加入武將等級 = 等級最高的 n 人的等級總和 / n
(n = 新武將加入前隊伍中的總人數 ; 超過15時取15 )
例如:
曹操(lv17)、其餘16人(lv3),則
新加入武將等級 = ( 17 + ( 14 * 3 ) ) / 15 = 59 / 15 = 3.93 = 3
B 所有武將等級非降序排列的情況下:
新加入武將等級 = ( 等級最高的 n 人的等級總和 + m ) / n
(註:n = 新武將加入前隊伍中的總人數 ; 超過15時取15 )
m 的計算方法如下:
由於所有武將等級非降序排列,所以相對於按照等級降序排列時的位置排列,必定
有人的位置向後移動了(我們這裡只要關注位置後移的人,前移的人不用管)。
先找出所有位置後移的人,然後再這些人中找到後移位數最多的人。如果有多個人
的後移位數並列最多,則取其中按照武將順序排列時排位最靠後的那人。記住此人
的等級是多少,最後再找低於該等級的所有武將中的最高等級,即為 m 的值。
例如:
當前所有武將順序排列如下:
1:曹操(lv9)、2:夏侯敦(lv6)、3:曹仁(lv9)、4:夏侯淵(lv5)、5:樂進(lv8)
、6:李典(lv4)、7:曹洪(lv6)
如按照降序排列則應當為:
1:曹操(lv9)、2:曹仁(lv9)、3:樂進(lv8)、4:夏侯敦(lv6)、5:曹洪(lv6)、
6:夏侯淵(lv5)、7:李典(lv4)
(註:若等級相同時,則保持原來的武將排列順序,所以曹操排在曹仁之前、夏侯
敦排在樂進之前)
其中按武將順序排列時的位置,相對於按照等級降序排列時位置後移的武將有:
曹仁—— 2 -> 3 後移 1 位
樂進—— 3 -> 5 後移 2 位
曹洪—— 5 -> 7 後移 2 位
後移最多的是後移 2 位,有樂進和曹洪2人。但是按照武將順序排列時,曹洪排在
樂進後面,所以記錄下曹洪的等級為 6。然後找到低於 lv6 的武將有夏侯淵(lv5)
和李典(lv4),取等級最高的是夏侯淵(lv5),即 m = 5。則
新加入武將等級 = ( 9 + 9 + 8 + 6 + 6 + 5 + 4 ) + 5 / 7 = 52 / 7 = 7.43 = 7
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.225.17.161
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.225.17.161
推
12/06 16:06, , 1F
12/06 16:06, 1F
→
12/06 16:36, , 2F
12/06 16:36, 2F
推
12/06 16:48, , 3F
12/06 16:48, 3F
→
12/06 18:19, , 4F
12/06 18:19, 4F
推
12/06 20:15, , 5F
12/06 20:15, 5F
推
12/15 04:07, , 6F
12/15 04:07, 6F
→
04/03 00:06, , 7F
04/03 00:06, 7F