#include <stdio.h>
int buf[10001];
int main(){
int l,m,i,j,cnt;
while(scanf("%d%d",&l,&m)!=EOF){
for(i=0;i<l+1;i++){
buf[i]=1;
}
int M[100][2]={0};
for(i=0;i<m;i++){
scanf("%d%d",&M[i][0],&M[i][1]);
for(j=M[i][0];j<=M[i][1];j++){
buf[j]=0;
}
}
cnt=0;
for(i=0;i<l+1;i++){
if(buf[i]==1) {
cnt++;
}
}
printf("%d\n",cnt);
}
return 0;
int buf[10001];
int main(){
int l,m,i,j,cnt;
while(scanf("%d%d",&l,&m)!=EOF){
for(i=0;i<l+1;i++){
buf[i]=1;
}
int M[100][2]={0};
for(i=0;i<m;i++){
scanf("%d%d",&M[i][0],&M[i][1]);
for(j=M[i][0];j<=M[i][1];j++){
buf[j]=0;
}
}
cnt=0;
for(i=0;i<l+1;i++){
if(buf[i]==1) {
cnt++;
}
}
printf("%d\n",cnt);
}
return 0;
}
注意:
1.一共有L+1棵树
2.数组全局变量 循环里初值清零 处理 输出 注意循环起点