选择合适的贪心策略
## ##以活动结束的时间作为贪心的策略,也就是局部最优解,从而找到全局最优解
include <bits/stdc++.h>
using namespace std;
struct post//选择用结构体来表示起始和结束时间
{
int s;
int e;
}a[101];
int cmp(const post& x, const post& y)//结构体排序!!
{
return x.e < y.e;
}
int main()
{
while (1)
{
int n;
int ans;
cin >> n;
ans = n;
if (n == 0)
break;
for (int i = 1; i <= n; i++)
cin >> a[i].s >> a[i].e;
sort(a + 1, a + 1 + n, cmp);
for (int i = 1; i <= n; i++)//这里略显麻烦,而且容易出bug
{
int j = i;
while (a[j + 1].s < a[i].e && j+1 <= n)
{
ans--;
j++;
}
i = j;
}
cout << ans << endl;
}
return 0;
}