AcWing 422. 校门外的树-区间合并思想
原题链接
简单
作者:
码
,
2021-01-23 15:57:25
,
所有人可见
,
阅读 509
#include<iostream>
#include<algorithm>
const int N=110;
using namespace std;
pair<int,int> section[N];
int main()
{
int st=-1,ed=-1,sum=0;
int l,m;
scanf("%d%d",&l,&m);
for(int i=0;i<m;i++)
{
int a,b;
scanf("%d%d",&a,&b);
section[i]=make_pair(a,b);
}
sort(section,section+m);
for(int i=0;i<m;i++)
{
if(section[i].first<=ed) ed=max(section[i].second,ed);
else
{
if(ed!=-1) sum+=ed-st+1;
st=section[i].first;
ed=section[i].second;
}
}
if(st!=-1) sum+=ed-st+1;
printf("%d",l-sum+1);
}