Pagini recente » Cod sursa (job #2608508) | Cod sursa (job #2113039) | Cod sursa (job #1545203) | Cod sursa (job #1757184) | Cod sursa (job #2068309)
#include <fstream>
using namespace std;
struct sp{float pg,g,p;};
ifstream f("rucsac.in");
ofstream g("rucsac.out");
sp a[1001];
int n,i,j;
float G,y;
int main()
{
f>>n>>G;
for(i=1;i<=n;i++){f>>a[i].g>>a[i].p;a[i].pg=a[i].p/a[i].g;}
for(i=1;i<n;i++)for(j=i+1;a[j].pg>a[j-1].pg && j>1;j--)swap(a[j],a[j-1]);
for(i=1;i<=n;i++)if(a[i].g<=G){G=G-a[i].g;y=y+a[i].p;}
else{j=y;y=y+a[i].pg*G;break;}
g<<y;
}