求解會議安排問題 C 實現

2021-10-05 19:56:12 字數 898 閱讀 6211

陳老師是乙個比賽隊的主教練,有一天,他想給團隊成員開會,應該為這次會 議安排教室,但教室缺乏,所以教室管理員必須通過接受訂單和拒絕訂單優化教室的利用率。 如果接受乙個訂單,則該訂單 的開始時間和結束時間成為乙個活動。注意,每個時間段只 能安排乙個訂單。請找出乙個最大化的總活動時間的方法。你的任務是這樣的:讀入訂單, 計算所有活動(接受的訂單)占用時間的最大值。

輸入描述

標準等的輸入將包含多個測試用例。對於每個測試用例,第 1 行是乙個整數 n(n<=10 000),接著的 n 行中每一行包括兩個整數 p 和 k(1<=p<=k<=300 000),其中 p 是一 個訂單的開始時間,k 是結束時間。

輸出描述

對於每個測試用例,輸出所有活動占用時間的最大值。

輸入樣例

41 2

3 51 4

4 5輸出樣例

題目分析以及演算法思路

此題意在於要讓會議室使用時間最大,故可以想到一種暴力解題的方法,全排列所有輸入樣例,重頭到尾計算當前情況下,會議室使用的時間大小。通過不斷的比較獲得答案。

**實現

#include

#include

using

namespace std;

intmain()

sort

(itv, itv + n)

;//公升序排序,以便下面全排列列出全部情況

int timebest =0;

cout << endl;do}

if(temptime >timebest)

}while

(next_permutation

(itv, itv + n));

cout << timebest << endl;

return0;

}

求解會議安排問題A RJ501求解會議安排問題

東北示範大學演算法課練習11月18日 problem description 陳老師是乙個比賽隊的主教練。有一天,他想給團隊成員開會,應該為這次會議安排教室,但教室非常缺乏,所以教室管理員必須通過接受訂單和拒絕訂單優化教室的利用率。如果接受乙個訂單,則該訂單的開始時間和結束時間成為乙個活動。注意,每...

C 實現會議安排問題(貪心問題)

一些專案要占用乙個會議室宣講,會議室不能同時容納兩個專案的宣講。給你每乙個專案開始的時間和結束的時間 給你乙個陣列,裡面 是乙個個具體的專案 你來安排宣講的日程,要求會議室進行的宣講的場次最多。返回這個最多的宣講場次。數學描述 如下圖所示我們給定三個陣列,圖中表示三條線段,線段的兩個端點分別代表的是...

求解活動安排問題

問題描述 假設有乙個需要使用某一資源的由n個活動所組成的集合s,s 1,n 該資源在任何時刻只能被乙個活動所占用,活動i有乙個開始時間bi和結束時間ei bi include include include define maxn 51 using namespace std int n 11 表示...