設計了乙個任務系統。這個系統是為了定時提醒人們去完成一些事情。
系統大致如下,初始的時候,人們可能會註冊很多任務,每乙個任務的註冊如下:
register q_num period
表示從系統啟動開始,每過 per
iod 秒提醒人們完成編號為 qnum
的任務。
你能計算出最先被提醒的
k 個任務嗎?
第一行輸入 n(0
3000
),k(0
1000
0),其中n
表示蒜頭君註冊的任務數量。
接下來 n
行,每行輸入一條註冊命令,其中0 um≤
3000
,0≤pe
riod
≤300
0。順序輸出k
行,表示依次提醒的任務的編號。如果同一時間有多個任務,最先提醒編號小的任務。
樣例輸入2 5
register 2004 200
register 2005 300
樣例輸出
2004
2005
2004
2004
2005
解題說明:優先佇列弄吧!沒啥的,有點想說明,這個提醒的過程也是有週期性,我們知道了乙個週期內的提醒樣本,那後面我們就全知道了,這樣,程式節約了好多時間!那麼問題來了,怎麼才能知道它的週期呢?這是個值得略微思考的問題。
#include#include#include#includeusing namespace std;
struct task
};mapm;
int main()
while(k--)
return 0;
}
codeup 優先佇列 問題 A 任務排程
題目描述 讀入任務排程序列,輸出n個任務適合的一種排程方式。輸入 輸入包含多組測試資料。每組第一行輸入乙個整數n n 100000 表示有n個任務。接下來n行,每行第乙個表示前序任務,括號中的任務為若干個後序任務,表示只有在前序任務完成的情況下,後序任務才能開始。若後序為null則表示無後繼任務。輸...
貪心 優先佇列 模擬 任務排程器
2020 03 10 17 22 21 問題描述 給定乙個用字元陣列表示的 cpu 需要執行的任務列表。其中包含使用大寫的 a z 字母表示的26 種不同種類的任務。任務可以以任意順序執行,並且每個任務都可以在 1 個單位時間內執行完。cpu 在任何乙個單位時間內都可以執行乙個任務,或者在待命狀態。...
Linux Ubuntu 定時提醒 執行任務
當我們需要一些自動定時提醒或者每天下班自動執行備份,定期自動重啟某些服務清理某些快取時,如何在大linux上使用幾句shell命令完成實現這份任務的自動化呢?notify send和crontab的結合就可以輕鬆實現定時執行,自動彈出通知提醒等。程式包libnotify bin為x桌面系統提供了向桌...