赣州网站优化制作,怎样维护网站,上海企业网站建设公,哪个网站做音基的题不花钱大厅安排大厅安排大厅安排
Description
有一个演讲大厅需要GEORGE管理#xff0c;演讲者们事先定好了需要演讲的起始时间和中止时间。GEORGE想让演讲大厅得到最大可能的使用。我们要接受一些预定而拒绝其他的预定#xff0c;目标自然是使演讲者使用大厅的时间最长。为方便起…大厅安排大厅安排大厅安排
Description
有一个演讲大厅需要GEORGE管理演讲者们事先定好了需要演讲的起始时间和中止时间。GEORGE想让演讲大厅得到最大可能的使用。我们要接受一些预定而拒绝其他的预定目标自然是使演讲者使用大厅的时间最长。为方便起见假设在某一时刻一个演讲结束另一个演讲就可以立即开始。
计算演讲大厅最大可能的使用时间。
Input
第一行为一个整数nn 100表示申请的数目。
Output
一个整数表示大厅最大可能的使用时间。
Sample Input
12
1 2
3 5
0 4
6 8
7 13
4 6
9 10
9 12
11 14
15 19
14 16
18 20
Sample Output
16
题目大意
有n个人打算在ai至bi时开一个演讲但只有一个场地要使演讲时间最长不能分开
解题方法
先用结束时间排序再看一看此人演讲的结果好还是不演讲好具体在代码里面讲
#includecstdio
#includeiostream
#includealgorithm
using namespace std;
int n,f[10005];
struct rec
{int x,y;
}a[105];
bool rep(rec xx,rec yy)
{return ((xx.yyy.y)||((xx.yyy.y)(xx.xyy.x)));//按结束时间从小到大排序如果相同再按开始时间从小到大排序
}
int main()
{scanf(%d,n);for (int i1;in;i)scanf(%d%d,a[i].x,a[i].y);//输入sort(a1,a1n,rep);//排序for (int i1;in;i)//第i个人for (int ja[i].y;ja[n].y;j)//只有时间大于a[i].y才能让这个人讲小于的无法排f[j]max(f[a[i].x]a[i].y-a[i].x,f[j]);//前面的是开始前加上这段时间后面的是原数printf(%d,f[a[n].y]);//输出
}