校门外的树

简介: 校门外的树

题解思路:

输入长与区间数Lm,并读入,初始化所有树的树木为L+1,并且标记每一棵树都是0,读入区间uv,读入的记作1,并且count--;输出count的树木就是马路上剩余树木数量

代码如下:

#include<bits/stdc++.h>    
using namespace std;    
#define IOS ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr)    
int main()
{
    int L, m;  
    cin >> L >> m;
    vector<int> str(L + 1, 0);
    int count = L + 1; 
    for(int i = 1; i <= m; i++)
    {
        int u, v;
        cin >> u >> v;
        for(int j = u; j <= v; j++)
        {
            if(str[j] == 0)
            {
                str[j] = 1;
                count--;
            }
        }
    }
    cout << count << endl;
    return 0;
}


相关文章
|
8月前
|
C++
【洛谷 P1047】[NOIP2005 普及组] 校门外的树 题解(位集合)
**NOIP2005普及组问题:**给定长度为$l$的马路,上面等距种植着树,需移除位于建造地铁区域的树。输入包含马路长度和区域数,以及各区域起止点,输出移树后剩余树的数量。样例输入:$l=500$, $m=3$,输出:$298$。$20\%$数据无区域重合,$1 \leq l \leq 10^4$,$1 \leq m \leq 100$。解决方案利用位集合(bitset)表示树的状态,遍历区域将树设为0,最后统计1的数量。AC代码使用C++实现。
41 0
|
9月前
DongDong认亲戚 - 并查集
DongDong认亲戚 - 并查集
34 0
|
9月前
|
算法
再探二分法
【2月更文挑战第5天】
71 3
校门外的树(三种解法,非直接暴力)
校门外的树(三种解法,非直接暴力)
|
算法 搜索推荐 C语言
堆排序——我欲修仙(功法篇)
堆排序——我欲修仙(功法篇)
131 0
堆排序——我欲修仙(功法篇)
|
算法
回溯算法——我欲修仙(功法篇)
回溯算法——我欲修仙(功法篇)
112 0
|
算法 C语言
二分查找——我欲修仙(功法篇)
二分查找——我欲修仙(功法篇)
100 0
|
人工智能 vr&ar C++
202104-4校门外的树
202104-4校门外的树
90 0
202104-4校门外的树