Cod sursă (job #95699)

Utilizator avatar cstefan Constantin Stefan cstefan IP ascuns
Problemă Lalele (clasele 9-10) Compilator cpp | 1,05 kb
Rundă Tema 9 clasele 9-10 2014/15 Status evaluat
Dată 7 dec. 2014 18:39:52 Scor 0
//Iisuse miluieste -ma
#include<fstream>
#define GOD 5000000
using namespace std;

void GOD_sort( long int a[ ] , long  int n )
{
long int p , aux , gasit;
do {
    gasit = 0 ;
    for( p = 0 ; p < n; p ++ )
       {
      if( a[ p ] > a[ p + 1 ] )
        {
        aux = a[ p ];
        a[ p ] = a[ p + 1];
	a[ p + 1] = aux;
	gasit = 1;
 	}
      }
  }while( gasit );
}
int main()
{
long int l[ GOD ] , x , d , k , i , j , N , h;
//Iisuse miluieste - ma 
ifstream f("lalele.in");
ofstream g("lalele.out");
f>>N;
i = 0;
while( !f.eof() )
     {
       f>>d;
       f>>x;
       if( x )
   	 {
 	  while( d )
  		{
  		 l[ i ] = x;
		 for( j = 0; j <= i ; j ++ )
   		     l[ j ] ++;
		i ++;
		d --;
		}
	  }
       if ( !x )
  	  {
           k = i;
	   GOD_sort ( l , ( k - 2 ) );
	   while ( d > 0 )
                 {
		  g<<l [ k / 2 ]<<endl;
 		  k = k / 2;
		  d --;
		  for ( h = 0; h < k ; h ++ )
		       l [ h ] ++;
                  }
            i = k;
	    }
      }
f.close();
g.close();
return 0;
}