贪心法----------区间调度问题
Posted joe2019
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了贪心法----------区间调度问题相关的知识,希望对你有一定的参考价值。
本题的关键是从可选择方法中选择哪一类最优化
答案是结束时间最早的一类
源代码
#include<iostream>
#include<algorithm>
#include<cstdio>
#define maxn 100100
using namespace std;
struct w
{
int endd,beginn;
};
bool cmp(w A,w B)
{
return A.endd<B.endd;
}
int main()
{
int t=-1,ans=0,n;
w work[maxn];
cin>>n;
for(int i=0;i<n;i++)
cin>>work[i].beginn;
for(int i=0;i<n;i++)
cin>>work[i].endd;
sort(work,work+n,cmp);
for(int i=0;i<n;i++)
{
if(work[i].beginn>t)
{
t=work[i].endd;
ans++;
}
}
cout<<ans<<endl;
return 0;
}
以上是关于贪心法----------区间调度问题的主要内容,如果未能解决你的问题,请参考以下文章