Pagini recente » Cod sursa (job #1899330) | Cod sursa (job #1739470) | Cod sursa (job #2561978) | Cod sursa (job #76703) | Cod sursa (job #1118509)
#include <fstream>
using namespace std;
struct cas
{
int g,p;
};
int main()
{
cas a[100001];
int n,gmax,i,pmax=0,sortat,c;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
f>>n>>gmax;
for(i=1;i<=n;i++)
{
f>>a[i].g>>a[i].p;
}
f.close();
do
{
sortat=1;
for(i=1;i<n;i++)
if(a[i].p<a[i+1].p)
{
c=a[i].p;a[i].p=a[i+1].p;a[i+1].p=c;
c=a[i].g;a[i].g=a[i+1].g;a[i+1].g=c;
sortat=0;
}
}while(sortat==0);
for(i=1;i<=n;i++)
{
if(gmax-a[i].g>=0)
{
gmax-=a[i].g;
pmax+=a[i].p;
}
}
g<<pmax;
g.close();
return 0;
}