Pagini recente » Cod sursa (job #586280) | Cod sursa (job #2685041) | Cod sursa (job #1334943) | Cod sursa (job #1817838) | Cod sursa (job #1604725)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n,k,s[5000],maxx,poz;
struct ya{int p,g;};
ya a[5000];
void citire()
{
f>>n>>k;
for(int i=1;i<=n;i++)
{
f>>a[i].g;
f>>a[i].p;
}
}
void maxi()
{
int maxx=0,ge=0;
int c = 0,maxge=0;
while(ge <= k)
{
maxx=0;
for(int i = 1;i <= n;i++)
if(s[i] == 0 && a[i].p > maxx)
{
maxge = a[i].g;
maxx = a[i].p;
poz = i;
}
c += maxx;
ge += maxge;
s[poz] = 1;
}
c -= a[poz].p;
g<<c;
}
int main()
{
citire();
maxi();
}