wa了1和2
查看原帖
wa了1和2
1250563
Celestinefly楼主2024/7/1 14:03
#include <bits/stdc++.h>
using namespace std;

const int N = 100;

typedef pair<int, int> ii;

int l, m;

queue<ii> q;

ii mm[N];

int main() {
    scanf("%d %d", &l, &m);

    for (int i = 0; i < m; i++) {
        scanf("%d %d", &mm[i].first, &mm[i].second);
    }
    sort(mm, mm + m);

    q.push(mm[0]);
    for (int i = 1; i < m; i++) {
        auto current = q.back();
        q.pop();
        if (mm[i].first <= current.second) {
            current.second = max(current.second, mm[i].second);
            q.push(current);
        } else {

            q.push(current);
            q.push(mm[i]);
        }
    }

    int sum = 0;
    while (!q.empty()) {
        auto n = q.front();
        q.pop();
        sum += n.second - n.first + 1;
    }
    printf("%d\n", l + 1 - sum);

    return 0;
}

wa了1和2,求助

2024/7/1 14:03
加载中...