Pagini recente » Cod sursa (job #1190116) | Cod sursa (job #2878648) | Cod sursa (job #1487127) | Cod sursa (job #407416) | Cod sursa (job #2503530)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("date.in");
ofstream fout ("date.out");
const int NMAX = 105;
int N, G, Sum, rez, prof;
int greutate[NMAX], profit[NMAX], e[NMAX];
int main()
{
fin >> N >> G;
for (int i = 1; i <= N; i ++) {
fin >> greutate[i] >> profit[i];
Sum += greutate[i], prof += profit[i];
e[i] = profit[i] / greutate[i];
}
for (int i = 1; i <= N - 1; i ++)
for (int j = i + 1; j <= N; j ++)
if (greutate[i] > greutate[j])
swap(greutate[i], greutate[j]), swap(profit[i], profit[j]);
for (int i = 1; i <= N - 1; i ++)
for (int j = i + 1; j <= N; j ++)
if (greutate[i] == greutate[j] && profit[i] > profit[j])
swap(profit[i], profit[j]), swap(greutate[i], greutate[j]);
for (int i = 1; i <= N; i ++)
if (Sum - greutate[i] >= G)
Sum -= greutate[i], prof -= profit[i];
fout << prof;
return 0;
}