Submission #1359107

#TimeUsernameProblemLanguageResultExecution timeMemory
1359107kantaponzAdvertisement 2 (JOI23_ho_t2)C++20
100 / 100
94 ms6220 KiB
#include <bits/stdc++.h>
using namespace std;

struct Data {
    int l, r;
    Data(int l = 0, int r = 1e9): l(l), r(r) {}

    bool operator< (const Data &o) const {
        if (l == o.l) return r > o.r;
        return l < o.l;
    }
};

stack<int> s;
vector<Data> v;
int n;


int main() {
    ios_base::sync_with_stdio(0), cin.tie(0);
    cin >> n;
    for (int i = 1; i <= n; i++) {
        int x, e;
        cin >> x >> e;
        v.emplace_back(x - e, x + e);
    }
    sort(v.begin(), v.end());
    for (int i = 0; i < n; i++) {
        if (!s.empty() && s.top() >= v[i].r) continue;
        s.push(v[i].r);
    }
    cout << s.size();
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...