Pagini recente » Cod sursa (job #294981) | Cod sursa (job #979907) | Cod sursa (job #62977) | Cod sursa (job #1277926) | Cod sursa (job #3183505)
/*
Magicianul Dino a scris pe o foaie in ordine numerele naturale de la 1 la N (adica 1 2 3 .. N).
Frasinel a ales doi indici x si y (x ≤ y) si Dino a sters toate elementele aflate intre pozitiile x si y.
Apoi Dino ii spune lui Frasinel sa aleaga alti doi inidici si va realiza acelasi lucru pentru elementele ramase scrise pe foaie.
Dupa M operatii de acest tip, Frasinel ar vrea sa stie ce element se afla pe pozitia K pe foaie.
*/
#include <iostream>
#include <fstream>
#include <vector>
#include <unordered_map>
using namespace std;
int main()
{
int n, m, k;
int x, y;
ofstream out("stergeri.out", ios_base::out);
ifstream in("stergeri.in", ios_base::in);
in >> n;
in >> m;
in >> k;
k--;
unordered_map<int, int> pos;
for (int i = 0; i < m; ++i)
{
in >> x;
in >> y;
x--; y--;
for (int j = 0; j <= y - x; ++j)
{
pos[y + 1 + j] = x + j;
}
}
for (auto it = pos.begin(); it != pos.end(); it++)
{
cout << it->second << " ";
if (it->second == k)
{
out << it->first + 1;
}
}
in.close();
out.close();
return 0;
}