-
Notifications
You must be signed in to change notification settings - Fork 102
/
2.9.cpp
38 lines (33 loc) · 924 Bytes
/
2.9.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/*
* 题目名称:剩下的树
* 题目来源:清华大学复试上机题
* 题目链接:http://t.cn/E9ufYo5
* 代码作者:杨泽邦(炉灰)
*/
#include <iostream>
#include <cstdio>
using namespace std;
const int MAXN = 10000 + 10;
bool tree[MAXN];
int main() {
int length;
int caseNumber;
while (scanf("%d%d", &length, &caseNumber) != EOF) {
for (int i = 0; i <= length; ++i) {
tree[i] = true;
}
int number = length + 1; //树的数量
while (caseNumber--) {
int left, right;
scanf("%d%d", &left, &right);
for (int i = left; i <= right; ++i) {
if (tree[i]) {
tree[i] = false; //移除该树
number--;
}
}
}
printf("%d\n", number);
}
return 0;
}