#include<stdio.h>
int main()
{
int l,i,n,a[1001],b,c;
while ( scanf("%d%d",&l,&n)!=EOF)//多组输入,,每次都要加上,这是经验。。。。
{ int d=0; //老样子,保证d=0.。所以写在while里。。。
for(i=0;i<l;i++){
a[i]=0;
}
while (n!=0)
{ n--;
scanf("%d%d",&b,&c);
for(i=b;i<=c;i++){
a[i]=1;
}
}
for(i=0;i<l;i++){
if(a[i]==0)
d++;
}
printf("%d\n",d+1);}//结果加1,这个几乎都有,,你别问我为什么,,,因为输出的时候比答案少1啊。。。
return 0;
}
int main()
{
int l,i,n,a[1001],b,c;
while ( scanf("%d%d",&l,&n)!=EOF)//多组输入,,每次都要加上,这是经验。。。。
{ int d=0; //老样子,保证d=0.。所以写在while里。。。
for(i=0;i<l;i++){
a[i]=0;
}
while (n!=0)
{ n--;
scanf("%d%d",&b,&c);
for(i=b;i<=c;i++){
a[i]=1;
}
}
for(i=0;i<l;i++){
if(a[i]==0)
d++;
}
printf("%d\n",d+1);}//结果加1,这个几乎都有,,你别问我为什么,,,因为输出的时候比答案少1啊。。。
return 0;
}