题目
模板及讲解
选择不相交区间
int end = -1, cnt = 0;//end 是上一选择区间的结束点,cnt为选择的区间个数
sort(A,A+n);//按照b排序
for(int i=0;i<n;i++)//循环每个区间
{
if(end < A[i].a) //如果区间不相交
{
end = A[i].b; //选择这个区间
cnt++;
}
}
区间选点问题
int end = -1, cnt = 0;//end 是上一选择区间的结束点,cnt为选择的点的个数
sort(A,A+n); //按照b排序
for(int i=0;i<n;i++) //循环每个区间
{
if(end < A[i].a) //如果区间不相交
{
end = A[i].b;//选择这个点
cnt++;
}
}
区间覆盖问题

本文介绍了区间选择与覆盖问题的解决方法,包括选择不相交区间、区间选点及区间覆盖问题的算法实现。通过排序和遍历的方式,有效地解决了这些经典问题。


被折叠的 条评论
为什么被折叠?



