Cod sursa(job #3275836)

Utilizator TheDasherAdrian Augustin TheDasher Data 11 februarie 2025 20:17:12
Problema Stergeri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#include <vector>

using namespace std;

ifstream fin("stergeri.in");
ofstream fout("stergeri.out");

long long N, M, K;
vector<pair<long long, long long>> deletions;

int main() {
    fin >> N >> M >> K;

    // Citim intervalele de ștergere
    for (long long i = 0; i < M; i++) {
        long long x, y;
        fin >> x >> y;
        deletions.push_back({x, y});
    }

    long long offset = 0;

    for (auto &[x, y] : deletions) {
        x -= offset;
        y -= offset;

        if (K >= x && K <= y) {
            K = y + 1;
        } else if (K > y) {
            K -= (y - x + 1);
        }

        offset += (y - x + 1);
    }

    fout << K << "\n";
    return 0;
}