Cod sursa(job #21192)

Utilizator SentryBogdan Sentry Data 22 februarie 2007 22:58:55
Problema Ghiozdan Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>
using namespace std;

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;
}