我的做法不复杂,没有用到很高深的方法
1.定义一个数组,每个数都赋为0,表示树没有被砍
2.找到那片区域,每个数赋为1,表示被砍掉了
3.循环数组,统计0的个数
#include<bits/stdc++.h>
using namespace std;
int main(){
int m[10001]={0},i,j,count=0,L,M,a,b;
cin>>L>>M;
for(i=0;i<M;i++){
cin>>a>>b;
for(j=a;j<=b;j++){
m[j]=1;
}
}
for(i=0;i<=L;i++){//注意这边i<=L是因为最右端的树需要计算进去
count+=(m[i]==0);
}
cout<<count<<endl;
return 0;
}
小蒟蒻只会这种方法嘤嘤嘤