#include<iostream>
#include<algorithm>
using namespace std;
typedef pair<int,int> P;
int main()
{
int n;
int *s,*t;
int i;
int ans,start;
P *wp;
cin >> n;
s = new int [n];
t = new int [n];
wp = new P[n];
//初始化
for(i = 0;i < n;i++)
{
cin >> s[i];
}
for(i = 0;i < n;i++)
{
cin >> t[i];
}
for(i = 0;i < n;i++)
{
wp[i].first = t[i];
wp[i].second = s[i];
}
//贪心算法核心
//每次都需要取结束时最小的
start = 0;
ans = 0;
sort(wp, wp+n);//!!
for(i = 0;i < n;i++)
{
if(wp[i].second > start)
{
ans ++;
start = wp[i].first;
}
}
cout << ans;
system("pause");
return 0;
}
贪心算法 p40
最新推荐文章于 2022-02-10 19:06:13 发布