Pagini recente » Cod sursa (job #2069654) | Cod sursa (job #318957) | Cod sursa (job #757207) | Cod sursa (job #1893579) | Cod sursa (job #2026909)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
struct DB
{
int x, y;
};
DB a[5005];
int n, g, gr, s;
void Citire()
{
int i;
fin >> n >> g;
for(i = 1; i <= n; i++)
fin >> a[i].x >> a[i].y;
}
inline bool Compar(const DB A, const DB B)
{
if(A.x > B.x)
return A.x > B.x;
else if(A.x == B.x)
return A.y > B.y;
return A.x > B.x;
}
void Rezolva()
{
int i;
sort(a + 1, a + n + 1, Compar);
for(i = 1; i <= n && gr < g; i++)
{
s += a[i].y;
gr += a[i].x;
}
fout << s << "\n";
}
int main()
{
Citire();
Rezolva();
return 0;
}