Cod sursa(job #1114307)

Utilizator CybiliniRadulescu Serban-Petru Cybilini Data 21 februarie 2014 14:50:35
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f("rucsac.in");
ofstream g("rucsac.out");
int i,p[1000],gr[1000],au1,au2;
int gata,n,ma;
int main()
{
    f>>n>>ma;
    for(i=1;i<=n;i++)
    { f>>gr[i]>>p[i];  }

    int gata=0;
    while(gata==0)
    { gata=1;
for(i=1;i<=n-1;i++) if(p[i]/gr[i] <  p[i+1]/gr[i+1])
   { au1=p[i]; au2=gr[i];
      p[i]=p[i+1];gr[i]=gr[i+1];
      p[i+1] = au1;
      gr[i+1] = au2;
      gata=0; }    }



    for(i=1;i<=n;i++)
    { g<<gr[i]<<" "<<p[i]<<"\n";
  }

  int x=0;
    for(i=1;i<=n;i++)
    {
        if(ma-gr[i] > 0)
        { x=x+p[i]; ma-=gr[i];     }
      }
      g<<x;
    return 0;
}