校隊排位賽 F 優先佇列

2021-10-03 08:59:06 字數 828 閱讀 7684

題目:

看病要排隊這個是地球人都知道的常識。

不過經過細心的0068的觀察,他發現了醫院裡排隊還是有講究的。0068所去的醫院有三個醫生(汗,這麼少)同時看病。而看病的人病情有輕重,所以不能根據簡單的先來先服務的原則。所以醫院對每種病情規定了10種不同的優先順序。級別為10的優先權最高,級別為1的優先權最低。醫生在看病時,則會在他的隊伍裡面選擇乙個優先權最高的人進行診治。如果遇到兩個優先權一樣的病人的話,則選擇最早來排隊的病人。

現在就請你幫助醫院模擬這個看病過程。

input

輸入資料報含多組測試,請處理到檔案結束。

每組資料第一行有乙個正整數n(0用其他方法模擬這個問題可能比較麻煩,但是用優先佇列的話就是一道水題。

設定優先佇列,過載《號或者過載仿函式,我這裡用後者。優先佇列的type用結構體存level和order。

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define maxn 100000+5

typedef

long

long ll;

using

namespace std;

struct node

;struct func };

intmain()

else}}

}return0;

}

校隊排位賽 2 D 動態規劃DP

題意 有三種狀態分別是休息,做事件a,做事件b,兩種事件不能在同一天做,問怎麼安排可以讓休息的天數最少。每天可以做的事情可能是能做所有事情或者只能做乙個或者只能休息 其實這道題的狀態轉移的影子很明顯,當前如果可以做事情,那麼當前的最優解一定是前面異於當前選擇的最優解的最小值。比如當前做事件a,那麼最...

排位賽題解

十進位制轉二進位制,右移 與 運算結合,遍歷每個數字在二進位制下點每一位。include intmain for int i 0 i 4 i for int i 0 i 4 i a i 1 右移除2 printf d d d d n num 0 num 1 num 2 num 3 return0 題...

排位賽一 E Milk Visits

farmer john 計畫建造 n 個農場,用 n 1 條道路連線,構成一棵樹 也就是說,所有農場之間都互相可以到達,並且沒有環 每個農場有一頭奶牛,品種為更賽牛或荷斯坦牛之一。farmer john 的 m 個朋友經常前來拜訪他。在朋友 i 拜訪之時,farmer john 會與他的朋友沿著從農...