Pagini recente » Cod sursa (job #3145679) | Cod sursa (job #2225326) | Cod sursa (job #2531530) | Statistici UTI Gilca Gheorghita Nutu (UTI_Gilca_Gheorghita_Nutu) | Cod sursa (job #2907980)
#include<iostream>
#include<algorithm>
#include<vector>
#include<fstream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
struct rucsac {
double valoare;
double greutate;
}s[5001];
int n, Gmax;
int g=0;
double val=0;
bool sortare(rucsac a, rucsac b)
{
return(a.valoare > b.valoare);
}
int ok = 1;
void solve()
{
for (int i = 1; i <= n && ok; i++)
{
if ((double)(Gmax - g) >= s[i].greutate)
{
val += s[i].valoare;
g += s[i].greutate;
}
else
{
ok = 0;
}
}
fout << val;
}
int main()
{
fin >> n >> Gmax;
for (int i = 1; i <= n; i++)
{
fin >> s[i].greutate >> s[i].valoare;
}
sort(s + 1, s + n + 1, sortare);
solve();
}