题解 | 剩下的树 标志动态数组/容器

剩下的树

https://www.nowcoder.com/practice/f5787c69f5cf41499ba4706bc93700a2

#include <iostream>
#include <vector>
using namespace std;

int main() {
	int L, M, start, end, count;
	// 用标志数组表示有树无树
	vector<int> interval;
	vector<int>::iterator it;
	while (cin >> L >> M) { 
		// 多轮一定要记得清空必要的上一轮数据
		count = 0;
		interval.clear();

		// 动态数组填充值
		while (L >= 0) {
			interval.push_back(1);  // 1 表示有树 0 表示无树
			L--;
		}
		for (int i = 0; i < M; i++) {
			cin >> start >> end;
			for (int j = start; j <= end; j++) {
				if (interval[j] != 0) {
					interval[j] = 0;
				}
			}
		}
		for (it = interval.begin(); it != interval.end();it++) {
			if (*it == 1) {
				count++;
			}
		}
		cout << count << endl;
	}
	return 0;
}

#考研##复试练习#
2025考研复试 文章被收录于专栏

复试ing,努力中。。。

全部评论

相关推荐

看到这个内容真是闹麻了。。。。。。现在有了AI以后很多人面试都会作弊吗?&nbsp;那对老老实实面试的人岂不是不公平....
程序员牛肉:公平那是对小孩子讲的童话故事,成年人的世界只有能不能接受失败的后果。 你要是能接受面试作弊被发现之后多家公司联合永久拉黑的后果,你就搞。
点赞 评论 收藏
分享
Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务