1428 活動安排問題
基準時間限制:1 秒 空間限制:131072 kb 分值: 10 難度:2級演算法題
有若干個活動,第i個開始時間和結束時間是[si,fi),同乙個教室安排的活動之間不能交疊,求要安排所有活動,最少需要幾個教室?
input
第一行乙個正整數n (n <= 10000)代表活動的個數。output第二行到第(n + 1)行包含n個開始時間和結束時間。
開始時間嚴格小於結束時間,並且時間都是非負整數,小於1000000000
一行包含乙個整數表示最少教室的個數。input示例
3output示例1 23 4
2 9
2好開森,
思路:起點從小到大排列,起點相等,終點從小到大,申請乙個陣列(模擬成教室),若下乙個開始時間大於或等於某個教室的最後乙個活動的結束時間,就更新這個教室的最晚結束時間。最後,這個陣列的大小就是答案。
#include
#include
using namespace std;
struct node
;int cmp(node x,node y)
}if(j==m&&a[i].e)
}cout }return 0; } input 第一行乙個正整數n n 10000 代表活動的個數。第二行到第 n 1 行包含n個開始時間和結束時間。開始時間嚴格小於結束時間,並且時間都是非負整數,小於1000000000 output 一行包含乙個整數表示最少教室的個數。input示例 3 1 23 4 2 9output示例 2 ... 有若干個活動,第i個開始時間和結束時間是 si,fi 同乙個教室安排的活動之間不能交疊,求要安排所有活動,最少需要幾個教室?input 第一行乙個正整數n n 10000 代表活動的個數。第二行到第 n 1 行包含n個開始時間和結束時間。開始時間嚴格小於結束時間,並且時間都是非負整數,小於10000... 題意 求區間最大覆蓋數,區間是左閉右開的。思路 將區間左右點邊界標記後,排個序,從小到大掃瞄,碰到乙個左點,覆蓋層加1,碰到乙個右點,覆蓋層減1.迴圈時記錄最大值。include include include include include include include include incl...1428 活動安排問題
1428 活動安排問題
1428 活動安排問題