#include<stdio.h>
int main()
{
int L, M, i, j, n;
int a[10001], b[10001];
scanf("%d %d",&L, &M); //輸入L和M
n = M*2; //循環輸入b數組0~n的數據
for(i=0; i<n; i+=2)
{
scanf("%d %d", &b[i], &b[i+1]);
}
for(i=0; i<=L; i++) //循環給a數組L個元素賦值
{
a[i] = i;
}
int r, s;
for(i=0; i<n; i+=2) //遍歷訪問數組b的各個區間
{
r = b[i]; //區間起始點
s = b[i+1]; //區間終點
for(j=r; j<=s; j++) //把數組b各個區間內元素在數組a中映射為0
{
a[j] = -1;
}
}
int k=0; //k用來統計不是0的個數,k賦值為1(數組a中原本包含一個0,此時加上)
for(i=0; i<=L; i++)
{
if(a[i] != -1)
{
k++; //用來統計非0的個數,即不在數組b區間內的數的個數
}
}
printf("%d", k);
return 0;
}