//校门外的树 
//思路:差分 
#include <bits/stdc++.h>
int d[10005]={1,0};//差分数组,初始化,有树看作1,无树看作0,第一位前面看作0 !!,所以差分数组第一元素为1,其余0 
using namespace std;
int main()
{
    int i,j,cnt=0;//计数器统计还有多少树 
    int L,M;
    cin>>L>>M;//输入马路长度和区间数量 

    for(i=0;i<M;i++)
    {
        int x,y;
        cin>>x>>y;
        d[x]--;d[y+1]++;//区间中间的差值不变,左端--,右端的下一位++ 
    }

    for(i=1;i<=L;i++)//求前缀和,若差值d[i]>0则计数++ 
    {
        d[i]+=d[i-1];
        if(d[i]>0)    cnt++;
    }
    if(d[0]>0)    cnt++;//d[0]特判一下 
    cout<<cnt<<endl;//输出 
}