这题没什么好说的,我觉得就是用数组判断一下,我用memset优化了一些慢效率的循环,本来以为会超时,但是结果完全相反,速度还挺快。。
代码如下:
C语言:
#include <stdio.h>
#include <string.h>
char map[10001];
int main(void)
{
int i, j;
int a, b;
int l, n;
int ans = 0;
scanf(%d%d, &l, &n);
memset(map, 1, l + 1);
for(i = 0; i < n; i++){
scanf(%d%d, &a, &b);
memset(map + a, 0, b - a + 1);
}
for(i = 0; i <= l; i++){
if(map[i]){
ans++;
}
}
printf(%d\\n, ans);
return 0;
}