为什么我的程序答案错误
#include
#define max 10005
int main()
{
int a[max];
int L, M, left[105], right[105];
while (scanf("%d %d", &L, &M) != EOF)
{
for (int i = 0; i < M; i++)
scanf("%d %d", &left[i], &right[i]);
int cnt = 0;
for (int i = 0; i < M; i++)
{
for (int j = left[i]; j <= right[i]; j++)
a[j] = 0;
}
for (int j = 0; j <= L; j++)
{
if (a[j] == 1)
cnt++;
}
printf("%d\n", cnt);
}
return 0;
}