p1047 校门外的树c语言
时间: 2024-03-18 22:35:19 浏览: 138
校门外的树
这是一道模拟题,题目要求我们在一排树中,去掉一些树后,计算剩余的树的数量。具体思路如下:
1.首先读入树的总数l和需要去掉的树的数量m。
2.定义一个长度为l+1的数组a,用来记录每个位置上是否有树,初始值都为1。
3.接着读入需要去掉的树的区间[u,v],将区间内的a[i]都置为0。
4.最后遍历整个数组a,统计值为1的元素个数,即为剩余的树的数量。
下面是C语言的代码实现:
```c
#include <stdio.h>
int main() {
int l, m, u, v;
scanf("%d %d", &l, &m);
int i, j, k = 0;
int a[l + 1];
for (i = 0; i <= l; i++) {
a[i] = 1;
}
for (i = 0; i < m; i++) {
scanf("%d %d", &u, &v);
for (j = u; j <= v; j++) {
a[j] = 0;
}
}
for (i = 0; i <= l; i++) {
if (a[i] == 1) {
k++;
}
}
printf("%d", k);
return 0;
}
```
阅读全文