Pagini recente » Cod sursa (job #2199416) | Cod sursa (job #469672) | Cod sursa (job #1061667) | Cod sursa (job #1018210) | Cod sursa (job #2929031)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("heavymetal.in");
ofstream fout("heavymetal.out");
struct concert {
int beg;
int end;
}v[100000];
int main()
{
int n;
fin >> n;
for (int i{ 1 }; i <= n; i++)
fin >> v[i].beg >> v[i].end;
for (int i{ 1 }; i <= n - 1; i++)
for (int j{ i + 1 }; j <= n; j++)
if (v[i].end > v[j].end)
{
concert aux = v[i];
v[i] = v[j];
v[j] = aux;
}
v[0].beg = 0, v[0].end = 0;
int poz = 0, sum = 0, prev = 0;
for (int i{ 1 }; i <= n; i++)
if (v[i].beg >= v[poz].end)
{
sum += (v[i].end - v[i].beg);
prev = poz;
poz = i;
}
else if (v[i].beg >= v[prev].end && (v[i].end - v[i].beg) > (v[poz].end - v[poz].beg))
{
sum += ((v[i].end - v[i].beg) - (v[poz].end - v[poz].beg));
poz = i;
}
fout << sum;
return 0;
}