给你个代码,自己理解
```cpp
#include<bits/stdc++.h>
using namespace std;
int l,m;
int m1,m2;
int s;
int a[100005];
int main()
{
cin>>l>>m;
memset(a,1,sizeof(a));//数组里的数全部为1.
for(int i=1;i<=m;i++)
{
cin>>m1>>m2;
for(int k=m1;k<=m2;k++)
a[k]=0;//区域里的数归零.
}
for(int i=0;i<=l;i++)
if(a[i]) s++;//数路上还有多少树.
cout<<s;
return 0;
}
```
by Loser_Lu @ 2020-02-01 21:21:57
@[白茶清欢__](/user/290450)
by Loser_Lu @ 2020-02-01 21:27:47
@[lzcjs](/user/305231) 虽然我不能理解您讲题的方式, 但是有件事还是要提的...
```cpp
memset(a,1,sizeof(a));//数组里的数全部为1.
```
``memset`` 按字节填值, a 的值并不是 1, ~~~如果我没算错应该是 4369~~, 一个非 0 的数罢了
by DepletedPrism @ 2020-02-01 21:31:56
@[DepletedPrism](/user/109751)
但我用的是
```cpp
if(a[i])
```
即非零就算。
by Loser_Lu @ 2020-02-01 21:34:01
@[DepletedPrism](/user/109751)
不过我之前确实不知道,谢谢了。
by Loser_Lu @ 2020-02-01 21:36:38
@[lzcjs](/user/305231) 我也只是说注释打错了啊 (
by DepletedPrism @ 2020-02-01 21:36:39
@[DepletedPrism](/user/109751) 您算错了QwQ 16843009
by zhy137036 @ 2020-02-01 22:17:20
应该是$(00000001\ 00000001\ 00000001\ 00000001)_2=2^{24}+2^{16}+2^8+2^0$
一个很大的数。
应该能看懂“按字节填”是什么意思吧。
by zhy137036 @ 2020-02-01 22:20:14
@[zhy123456](/user/178294) ~~8 位我按 4 位算了, 太丢人了~~ = =
by DepletedPrism @ 2020-02-01 22:41:32
@[lzcjs](/user/305231) 我的代码是没错的就是那个小点不理解
by 白茶清欢__ @ 2020-02-02 21:51:23