a380: 4.王位繼承權
標籤 :
通過比率 : 2人/3人 ( 67% ) [非即時]
評分方式:
Tolerant

最近更新 : 2023-10-26 16:35

內容

英國自 1533 年制訂王位繼承法以來,兒子的繼承優先權一直都在女兒之前。一直到 2013 修正案才改為 2013 年以後出生無論男女都擁有同等繼承權,修改之前的繼承優先規則如下:

  • 國王兒子(由長至幼)及其直屬血親。
  • 國王女兒(由長至幼)及其直屬血親。
  • 國王兄弟(由長至幼)及其直屬血親。
  • 國王姊妹(由長至幼)及其直屬血親。

 

當 2022 年查爾斯繼位為國王後,前 27 順位的王位繼承順序如上圖所示,已死亡者無繼承權,但其直屬血親仍有繼承權,直屬血親可能有很多代。假設沒有 2013 修正案,則 Charlotte 的繼承順序將下降為 4,而 Louis 上升為 3。同樣的,Mia 和 Lena 將下降為 22 和 23,而 Lucas 則上升為 21。

本題請讀檔輸入某個年代的王室親子關係,以符合 2013 修正案的 2013 年以後出生男女擁有同等繼承權為原則,輸出此年代的王位繼承順序。

為簡化程式,本題的王位繼承順序範圍最多只計算到國王親兄弟姊妹的直屬血親,亦即上圖中的 24~27 順位不用輸出。

輸入說明

輸入資料表示所有親子關係的樹狀結構,其列數不固定。

其中第一列固定有兩個字串,第一個字串為目前在位國王(或女王)的名字,第二個字串(M)代表為男性,(F)代表為女性。

第二列開始之後的每一列都包含多個字串和一個整數來表示親子關係,其中第一個字串為父(或母)的名字,第二個字串(M)或(F) 代表男或女,第三個固定為整數,表示此父(或母)的小孩數量,第四個字串為第一個小孩的名字,第五個字串(M)或(F)代表男或女,第六和第七個字串為第二個小孩的名字和性別(如果小孩數量大於 1), 依此方式以長幼順序列出所有小孩。

所有資料皆以空格隔開,所有名字皆為字串格式,長度最多為 20 個字元,所有名字都不重複。性別字串中男性已死亡表示為(MD),女性已死亡則表示為(FD),男性 2013 年以後出生表示為(MN),代表已無男性優先權,男性 2013 年以後出生且已死亡則表示為(MND)。

而最後一列固定為一個’#’字元,代表輸入結束。

輸出說明

根據輸入資料的所有親子關係,依序輸出目前在位國王死後的王位繼承順序,每個順位皆包含順序和名字兩個資料,順序為一整數,名字為一字串,所有資料皆以空格隔開。

範例輸入 #1
Charles (M)
Elizabeth (FD) 4 Charles (M) Anne (F) Andrew (M) Edward (M) Charles (M) 2 William (M) Henry (M)
William (M) 3 George (M) Charlotte (F) Louis (MN) Henry (M) 2 Archie (M) Lilibet (F)
Anne (F) 2 Peter (M) Zara (F) Peter (M) 2 Savannah (F) Isla (F)
Zara (F) 3 Mia (F) Lena (F) Lucas (MN) Andrew (M) 2 Beatrice (F) Eugenie (F) Beatrice (F) 1 Sienna (F)
Eugenie (F) 1 August (M)
Edward (M) 2 Louise (F) James (M) 
範例輸出 #1
1 William 2 George 3 Charlotte 4 Louis 5 Henry 6 Archie 7 Lilibet 8 Andrew 9 Beatrice 10 Sienna 11 Eugenie 12 August 13 Edward 14 James 15 Louise 16 Anne 17 Peter 18 Savannah 19 Isla 20 Zara 21 Mia 22 Lena 23 Lucas
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (20%): 1.0s , <1K
公開 測資點#1 (20%): 1.0s , <1K
公開 測資點#2 (20%): 1.0s , <1K
公開 測資點#3 (20%): 1.0s , <1K
公開 測資點#4 (20%): 1.0s , <1K
提示 :
標籤:
出處:
111學年度高級中學資訊學科能力競賽-彰雲嘉區複賽程式設計試題 [管理者: ]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」