Pagini recente » Cod sursa (job #3032588) | Cod sursa (job #3229354) | Cod sursa (job #599152) | Cod sursa (job #2700086) | Cod sursa (job #3183507)
/*
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;
unordered_map<int, int> pos;
for (int i = 0; i < m; ++i)
{
in >> x;
in >> y;
for (int j = y + 1; j <= n; ++j)
{
pos[j] = j - (y - x + 1);
}
}
for (auto it = pos.begin(); it != pos.end(); it++)
{
cout << it->second << " ";
if (it->second == k)
{
out << it->first;
break;
}
}
in.close();
out.close();
return 0;
}