#include <iostream>
#include <vector>

using namespace std;

int main() {
    int L, M;
    cin >> L >> M;
    vector<int> trees(L + 1, 1); // 初始化马路上的树,默认都存在

    for (int i = 0; i < M; i++) {
        int start, end;
        cin >> start >> end;
        for (int j = start; j <= end; j++) {
            trees[j] = 0; // 将区域内的树移走
        }
    }

    int remaining = 0;
    for (int i = 0; i <= L; i++) {
        remaining += trees[i]; // 统计剩余的树的数量
    }

    cout << remaining << endl;

    return 0;
}

思路:初始化马路上的树,默认都存在。然后遍历每个区域,将区域内的树移走(即将对应位置的树设为0)。最后统计剩余的树的数量,即为马路上剩余的树的数目

KKT数组204校门外的树暂无标签时间限制:CC++ 1000MS其他语言 2000MS内存限制:CC++ 256MB其他语言 512MB难度:中等分数:100 OI排行榜得分:1201分数+2难度出题人:描述某校大门外长度为 L 的马路上有一排树每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴马路的一端在数轴 0的位置另一端在L的位置;数轴上的每个整数点即012……L都种有一棵树。由

原文地址: https://www.cveoy.top/t/topic/iDRJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录