Cod sursa(job #125531)

Utilizator RobytzzaIonescu Robert Marius Robytzza Data 20 ianuarie 2008 14:22:57
Problema Gardieni Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream.h>

ifstream fin("gardieni.in");
ofstream fout("gardieni.out");

struct sirul{
    int a,b,c;
};

typedef struct sirul sip;
sip sir[50010];
long n,t,mat[1000010];
long long S;

void citire()
{
   fin>>n>>t;
     for (int i=0;i<n;i++)
	fin>>sir[i].a>>sir[i].b>>sir[i].c;
   fin.close();
}
void suma()
{
   long min=0,poz=-1;
   for (int i=0;i<n;i++)
   {
     min=120000000;
     poz=-1;
       for (int j=0;j<n;j++)
       {
	   if (sir[j].c<min)
	   {
	     min=sir[j].c;
	     poz=j;
	   }
       }
     if (poz!=-1)
     {
     for (int k=sir[poz].a ; k<=sir[poz].b ; k++)
	if (mat[k]==0)
	{
	   mat[k]=1;
	   S+=sir[poz].c;
	}
     sir[poz].c=2154434563;
     }
   }
}

int main()
{
   citire();
   suma();
   fout<<S<<"\n";
   fout.close();
   return 0;
}