Cod sursa(job #545977)

Utilizator Renegatu16Stroia Laurentiu Renegatu16 Data 4 martie 2011 10:47:12
Problema Energii Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.11 kb
#include <iostream>
#include<fstream>

using namespace std;
fstream f("energii.in",ios::in);
fstream g("energii.out",ios::out);
long G,W,e,c,s,a[1002][1002],i,j,max1=10005,s1,c1,max2=10006;

int main()
{   f>>G>>W;
  for(i=1;i<=G;i++)
    {
        f>>a[i][1]>>a[i][2];
    }
  /* for(e=1;e<=G;e++)
     {  s=0;c=0;
         for(i=e;i<=G;i++)
          {
              if(s<=W){
                                s=s+a[i][1];
                                c=c+a[i][2];
                                }
          }
          if(max1>c && s>=W)max1=c;
     }*/
     for(i=1;i<=G;i++)
       {  s=0;c=0;s1=c1=0;

               for(e=1;e<=G;e++)
                 if(a[i][1]+a[e][1]>=W && e!=i)
                    {
                        s1=s1+a[i][1]+a[e][1];
                                c1=c1+a[i][2]+a[e][2];max2=c1;
                    }
                    else {s=s+a[e][1];
                          c=c+a[e][2];}

       if(max1>c && s>=W && max1<max2)max1=c;
          else if(max1>max2 && s1>=W)max1=max2;
       }
     if(max1==10005)g<<"-1";
       else g<<max1;
    return 0;
}