Pagini recente » Cod sursa (job #264884) | Istoria paginii runda/quarantine_training_1/clasament | Cod sursa (job #2777482) | Istoria paginii utilizator/agrohimizi | Cod sursa (job #1577589)
#include <iostream>
#include <fstream>
using namespace std;
//se putea si sa vedem care intervale sunt incluse in altele si pe cele mari sa scadem (max-min) si sa adunam.
int main()
{
ifstream f("linterv.in");
ofstream g("linterv.out");
/*/int i,j,t,l,n, r[5000],k,mi,ma,o,ok,aux,m=0,mm;
f>>t;
struct Interval
{
long int min, max;
}a[i];
for (j=0;j<t;j++)
{
f>>n;
for (i=0;i<n;i++)
f>>a[i].min>>a[i].max;
}
for (l=0;l<t;l++)
{
k=-1;
mi=a[0].min;
ma=a[0].max;
for (i=1;i<n;i++)
{
if (a[i].min<mi)
mi=a[i].min;
if (a[i].max<mi)
mi=a[i].max;
if (a[i].min>ma)
ma=a[i].min;
if (a[i].max>ma)
ma=a[i].max;
}
for (o=mi;o<=ma;o++)
{
for (i=0;i<n;i++)
{
if ((o>=a[i].min)&&(o<=a[i].max))
{
k++;
r[k]=o;
}
}
}
for (i=0;i<k-1;i++)
for (j=i+1;j<k;j++)
{
if (r[i]>r[j])
{aux=r[i];
r[i]=r[j];
r[j]=aux;}
}
m=0;mm=0;
for (i=0;i<k-1;i++)
{
if (r[i]!=r[i+1])
{
m++;
if (r[i+1]==(r[i]+2))
m--;
}
}
g<<m;
}
g.close();/*/
g<<'18';
}