水题,但是注意memset按字节赋值
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int tree[10005];
int main()
{
int l,m;
int i,j;
int le,ri;
int count;
while(~scanf("%d%d",&l,&m))
{
memset(tree,1,4*l+4);
count=0;
for(i=0;i<m;i++)
{
scanf("%d%d",&le,&ri);
for(j=le;j<=ri;j++)
if(tree[j])
tree[j]=0;
}
for(i=0;i<=l;i++)
if(tree[i])
count++;
printf("%d\n",count);
}
return 0;
}