由于数据量小,不用线段树,直接暴力就可以搞定。

代码:

#include<iostream>
using namespace std;
int f[10005];
int main(){
    int l,m,lc,rc;
    while(~scanf("%d%d",&l,&m)){
        for(int i=0;i<=l;++i) f[i]=1;
        for(int i=1;i<=m;++i){
            scanf("%d%d",&lc,&rc);
            for(int j=lc;j<=rc;++j) if(f[j]) f[j]=0; 
        }
        int ans=0;
        for(int i=0;i<=l;++i) ans+=f[i];
        printf("%d\n",ans);
    }
    return 0;
}