15058 - How to Survive in the Harem   

Description

 

妳是一位後宮中的嬪妃。

今日天氣頗好,妳在御花園散步時靈光一閃:

既然宮鬥如此凶險,何不用程式算一下自己的勝率?

於是,聰明伶俐的妳命太監蒐集了後宮中其他嬪妃的資料。每位嬪妃具有以下三項資訊:

  • 代號(name):由不含空白的字串組成。

  • 階級(level):

level

階級

9

皇后

8

皇貴妃

7

貴妃

6

妃

5

嬪

4

貴人

3

常在

2

答應

1

官女子

  • 綜合宮鬥能力(ability):一個正整數,數字越大代表宮鬥能力越強。

經過縝密的分析,妳制定了一套科學化的宮鬥淘汰制度。

每位嬪妃的 宮鬥分數(score) 為:

score = level * ability

宮鬥依照以下規則進行:

  1. 每一輪淘汰 score 最小的嬪妃。

  2. 如果有多位嬪妃的 score 相同,則淘汰 level 較小的嬪妃。

  3. 如果 score 與 level 皆相同,則淘汰 輸入順序較前 的嬪妃。

  4. 宮鬥持續進行,直到後宮只剩下最後一位嬪妃。

 

為了方便妳建立宮鬥勝率計算表,妳自己的 index 固定為 0,其餘嬪妃依照輸入順序編號為 1 到 n。

妳自己的宮鬥勝率(win rate)定義為:

win rate = 妳贏過的其他嬪妃人數 / n * 100%

n 為除妳之外的所有嬪妃人數,包含最後的勝者(若最後的勝者不是妳)。

如果一位嬪妃比妳更早被淘汰,就代表妳成功贏過她。

如果妳成為最後的勝者,代表妳贏過所有其他嬪妃,因此勝率為 100.00%。

例如:

假設 n = 4,共有妳與其他 4 位嬪妃參與宮鬥。若淘汰順序為:

3 4 0 1

最後的勝者為 2。

 

妳的 index 為 0,在妳之前被淘汰的嬪妃為 index 3 與 4,因此妳成功贏過 2 位嬪妃。

index 1 比妳晚被淘汰,而 index 2 為最後的勝者,因此這兩位皆不算被妳贏過。

所以妳的勝率為:

2 / 4 * 100% = 50.00%

請根據以上規則,計算:

  1. 所有被淘汰嬪妃的 index,依照淘汰順序排列。

  2. 妳自己的宮鬥勝率。

  3. 最後成功留在後宮中的嬪妃 index。

 

限制

本題可以使用一維陣列,但不可使用二維或更高維度的陣列。

 

Input

第一行包含妳自己的代號、階級與綜合宮鬥能力:

my_name my_level my_ability

第二行包含一個整數 n,代表除妳之外共有多少位嬪妃:

n

接下來 n 行,每行包含一位其他嬪妃的代號、階級與綜合宮鬥能力:

name level ability

 

輸入資料符合以下限制:

  1. 1 ≤ n ≤ 10
  2. 1 ≤ level ≤ 9
  3. 1 ≤ ability ≤ 1000
  4. 1 ≤ length of name ≤ 20
  5. 所有 name 皆為不包含空白的字串。
  6. 妳自己的 index 為 0,其他嬪妃的 index 按照輸入順序依序為 1, 2, ..., n。

 

Output

第一行輸出所有被淘汰嬪妃的 index,依照淘汰順序排列,並以一個空格分隔。

最後的勝者不包含在淘汰順序中。

Elimination order: X1 X2 X3 ...

第二行輸出妳自己的宮鬥勝率,四捨五入至小數點後兩位:

My win rate: xx.xx%

第三行輸出最後成功留在後宮中的嬪妃 index:

Harem winner: Y

 

Note:

  1. 輸出格式必須完全相符,包含空格、大小寫、標點符號與換行字元 \n。
 

Sample Input  Download

Sample Output  Download




Discuss