标签:
2 2 1 10 10 11 3 1 10 10 11 11 20
1 2
按照结束的顺序排序,结束的越早之后可选的工作越多
#include <iostream>
#include <algorithm>
using namespace std;
struct node
{
int start;
int End;
}Time[10020];
bool cmp(node a, node b)
{
return a.End < b.End;
}
int main()
{
int Case;
cin>>Case;
while(Case--)
{
int n;
cin>>n;
for(int i = 0; i < n; i++)
{
cin>>Time[i].start>>Time[i].End;
}
sort(Time,Time+n,cmp);
int ans = 0,End = 0;
for(int i = 0; i < n; i++)
{
if(End < Time[i].start)
{
ans++;
End = Time[i].End;
}
}
cout<<ans<<endl;
}
return 0;
}
标签:
原文地址:http://blog.csdn.net/u013445530/article/details/42458743