//活动安排问题
//问题:设有n个活动的集合C={1,2,…,n},一个资源(如会议室),
//而在同一时间内只能有一个活动使用该资源。
//活动i(i=1,2,...,n)的开始时间si,结束时间fi,且si <fi 。
//活动i占用会议室的时间段为半开区间[si, fi)。
//如果[si, fi)与[sj , fj)不相交,则称活动i与活动j是相容的。
//活动安排问题要求在所给的活动集合中选出最大的相容活动子集,
//也即尽可能地选择更多的活动来使用资源。
①#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
void SpecialSort(int p[][2],int n);
void TimeManager(int a[][2],int n);
int main(int argc, char** argv)
{
int t[6][2]= {
{1,3},{2,4},{4,5},{7,8},{5,9},{9,10}};
TimeManager(t,6);//s[i][j]=*(*(p+i)+j)//形参为int (*a)[n] //n为i的大小
// SpecialSort(t,4);
return 0;
}
void SpecialSort(int p[][2],int n)
{
int tp1,tp2;
for(int i=0; i&l