题解 | 校门外的树

校门外的树

https://www.nowcoder.com/practice/0e8cfc82936048769af45967f3c4ef7e

#include <any>
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    int l, m;
    cin >> l >> m;
    vector<pair<int, int>> v(m);
    for (int i = 0; i < m; ++i) {
        cin >> v[i].first >> v[i].second;
    }
    sort(v.begin(), v.end());
    vector<pair<int, int>> tmp;
    for (const auto& kv : v) {
        if (tmp.empty() || tmp.back().second < kv.first - 1) {
            tmp.push_back(kv);
        } else {
            tmp.back().second = max(tmp.back().second, kv.second);
        }
    }
    int ret = l + 1;
    for (const auto& kv : tmp) {
        ret -= (kv.second - kv.first + 1);
    }
    cout << ret << endl;
}

全部评论

相关推荐

03-29 17:05
门头沟学院 Java
asdasdasda...:我前段时间找工作焦虑,有几天连续熬夜熬穿了,然后心脏突然不舒服,立马躺床上睡觉了,然后第二天还是不舒服,去看医生说是心率不齐,吓得我后面天天早早睡觉,调养身体,过了好几天才好过来。所以真的,工作这些东西哪有那么重要,最多钱多一点钱少一点,降低物欲。活着才是最重要的,现在想想真的后怕
如何排解工作中的焦虑
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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