Pagini recente » Cod sursa (job #353824) | Cod sursa (job #725301) | Cod sursa (job #2242717) | Cod sursa (job #1013507) | Cod sursa (job #1114307)
#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;
}