M-AM MUTAT PE COSMINMUNTIANU.RO!!!!!!!!!!!

Eliminarea unui interval inchis

#include <iostream>
#include <fstream>
using namespace std;

struct Intervale
{
int x,y;
};

Intervale a[1000];
int n;
void Citire()
{
ifstream fin(„date.in”);
fin>>n;
for (int i=0;i<n;i++)
fin>>a[i].x>>a[i].y;
fin.close();
}

void Sortare()
{
Intervale aux;
for (int i=0;i<n-1;i++)
for (int j=i+1;j<n;j++)
if ((a[i].x>a[j].x || a[i].x==a[j].x) && a[i].y<a[j].y)
{
aux=a[j];
a[j]=a[i];
a[i]=aux;
}
}

void Eliminare()
{
int i=1,j=0,nr=0;
while (i<n)
{
while (a[j].y>=a[i].y && i<n)
{
nr++;
i++;
}
j=i;i++;
}
cout<<nr<<” „;
}

void Afisare()
{
for (int i=0;i<n;i++)
cout<<a[i].x<<” „<<a[i].y<<„\n”;
}

int main()
{
Citire();
Sortare();
Afisare();
Eliminare();
return 0;
}

Fisierul date.in va arata asa:

5
1 9
2 4
3 79
5 6
12 13

Anunțuri

Lasă un răspuns

Completează mai jos detaliile tale sau dă clic pe un icon pentru a te autentifica:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s