406 根據身高重建佇列

2022-08-11 05:00:17 字數 639 閱讀 5748

2020-06-09

根據身高重建佇列

假設有打亂順序的一群人站成乙個佇列。 每個人由乙個整數對(h, k)表示,

其中h是這個人的身高,k是排在這個人前面且身高大於或等於h的人數。

編寫乙個演算法來重建這個佇列

題解:思路1:貪心演算法

每次插入乙個元素 都是滿足題意的解

當佇列中所有人的 (h,k) 都是相同的高度 h,只有 k 不同時,解決方案很簡單:每個人在佇列的索引 index = k。

即使不是所有人都是同一高度,這個策略也是可行的。因為個子矮的人相對於個子高的人是 「看不見」 的,

所以可以先安排個子高的人。

406 根據身高重建佇列

假設有打亂順序的一群人站成乙個佇列。每個人由乙個整數對 h,k 表示,其中h是這個人的身高,k是排在這個人前面且身高大於或等於h的人數。編寫乙個演算法來重建這個佇列。注意 總人數少於1100人。示例輸入 7,0 4,4 7,1 5,0 6,1 5,2 輸出 5,0 7,0 5,2 6,1 4,4 7...

406 根據身高重建佇列

假設有打亂順序的一群人站成乙個佇列。每個人由乙個整數對 h,k 表示,其中h是這個人的身高,k是排在這個人前面且身高大於或等於h的人數。編寫乙個演算法來重建這個佇列。注意 總人數少於1100人。示例輸入 7,0 4,4 7,1 5,0 6,1 5,2 輸出 5,0 7,0 5,2 6,1 4,4 7...

406 根據身高重建佇列

假設有打亂順序的一群人站成乙個佇列。每個人由乙個整數對 h,k 表示,其中h是這個人的身高,k是排在這個人前面且身高大於或等於h的人數。編寫乙個演算法來重建這個佇列。注意 總人數少於1100人。示例輸入 7,0 4,4 7,1 5,0 6,1 5,2 輸出 5,0 7,0 5,2 6,1 4,4 7...