C语言,一个超级简单的方法,开一个数组(马路长度)全为零,地铁过的地方全为1,树棵数减掉地铁过的地方就行了。

```#include<stdio.h>
int main ()
{
	int l=0;
	int n=0;
	int i,j,k;
	int a=0,b=0;
	int sum=0;
	
	scanf("%d",&l);
	scanf("%d",&n);
	int kk[10000]={0};
	
	for(i=0;i<n;i++)
	{
		scanf("%d %d",&a,&b);
		for(j=a;j<=b;j++)
		{
			kk[j]=1;
		}
	}
	for(k=0;k<=l;k++)
	{
		sum+=kk[k];
	}
	printf("%d\n",(l+1)-sum);
	return 0;
}