日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hoj 1072 活动安排问题

發布時間:2024/4/17 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hoj 1072 活动安排问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

活動安排問題

Time Limit:1000MS? Memory Limit:65536K
Total Submit:139 Accepted:3

Description

假設要在一會場里安排一批活動,并希望盡可能多的安排活動。設計一個有效的算法計算當所安排的活動最多時,會場的使用時間。會場的使用時間是指活動占用會場的時間,例如一活動在1到23分占用會場,那么會場的使用時間就是23分。
編程任務:
對于給定的k個待安排的活動,編程計算安排的活動最多時會場使用時間。

Input

輸入數據是由多組測試數據組成。每組測試數據輸入的第一行有1 個正整數k(k≤8500),表示有k個待安排的活動。接下來的k行中,每行有2個正整數,分別表示k個待安排的活動開始時間和結束時間。時間以0 點開始的分鐘計。

Output

對應每組輸入,輸出的每行是計算出的會場使用時間。

Sample Input

5 1 23 12 28 25 35 27 80 36 50

?

Sample Output

49

?

Source

wangzhiqun

[Submit]?? [Go Back]?? [Status]?? [Discuss]

?

?

//13222?wupanlei?1072?Accepted?952K?399MS?G++?0.8K?2009-06-24?08:20:57?
#include?<iostream>
#include?
<algorithm>
#define?MAX?9000
using?namespace?std;
typedef?
struct?node
{
????
int?s;
????
int?e;
}Data;
class?Party
{
private:
????Data?data[MAX];
????
int?summ;
????
int?n;
public:
????Party();
????
void?Set(int?nn);
????
//friend?bool?comp(int?a,int?b);
????int?CalSum();
};
bool?comp(node?a,node?b)
{
????
return?a.e<b.e;
}
Party::Party()
{
????summ
=0;
}
void?Party::Set(int?nn)
{
????n
=nn;
????
int?i;
????
for(i=0;i<n;i++)
????{
????????cin
>>data[i].s>>data[i].e;
????}
}
int?Party::CalSum()
{
????
int?j=0,i;
????sort(data
+0,data+n,comp);
????summ
=data[0].e-data[0].s+1;
????
for(i=1;i<n;i++)
????{
????????
if(data[i].s>=data[j].e)
????????{
????????????summ
+=data[i].e-data[i].s+1;
????????????j
=i;
????????}
????}
????
return?summ;
}
int?main()
{
????
int?nn;
????
while(cin>>nn)
????{
????????Party?p;
????????p.Set(nn);
????????cout
<<p.CalSum()<<endl;
????}
????
return?0;
}

?

轉載于:https://www.cnblogs.com/forever4444/archive/2009/06/24/1509882.html

總結

以上是生活随笔為你收集整理的hoj 1072 活动安排问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。