Submission #1340126

#TimeUsernameProblemLanguageResultExecution timeMemory
1340126orgiloogiiTrading (IZhO13_trading)C++20
100 / 100
117 ms18988 KiB
#include <bits/stdc++.h>
#define int long long
#define ff first
#define ss second
using namespace std;

signed main() {
    ios_base::sync_with_stdio(0);
    cin.tie(NULL);
    int n, m;
    cin >> n >> m;
    priority_queue <pair <int, int>> pq;
    vector <vector <pair <int, int>>> adj(n + 1);
    for (int i = 0;i < m;i++) {
        int l, r, x;
        cin >> l >> r >> x;
        adj[l].push_back({x - (l - 1), r});
    }
    for (int i = 1;i <= n;i++) {
        for (auto [x, r] : adj[i]) {
            pq.push({x, r});
        }
        while (!pq.empty()) {
            auto [x, y] = pq.top();
            if (y >= i) {
                break;
            }
            pq.pop();
        }
        if (pq.empty()) {
            cout << 0 << ' ';
            continue;
        }
        cout << pq.top().ff + i - 1 << ' ';
    }
    cout << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...