Cod sursa(job #18123)

Utilizator SentryBogdan Sentry Data 18 februarie 2007 09:43:52
Problema Ghiozdan Scor 0
Compilator cpp Status done
Runda preONI 2007, Runda 2, Clasele 11-12 Marime 0.79 kb
#include <fstream.h>

ifstream in("ghiozdan.in");
ofstream out("ghiozdan.out");

int N, greutate[20000], nr;
long int G, gSac;
int K1[201], K2[201];

void Citire()
{
     in >> N >> G;

     for( int i=1; i<=N; i++ )
     {
          in >> greutate[i];
          K1[greutate[i]]++;
          K2[greutate[i]]++;
     }
}

void Solve()
{
	int i;

     for( i=200; i>=1; i-- )
     {
	  while( i<=G && K1[i] )
	  {
		 K1[i]--;
		 gSac += i;
		 nr++;
		 G -= i;
	  }
     }

     out << gSac << " " << nr << endl;

     for( i=1; i<=200; i++ )
     {
          while( K2[i] > K1[i] )
          {
                 out << i << endl;
                 K2[i]--;
          }
     }
}


int main()
{
      Citire();
      Solve();
      return 0;
}