Pagini recente » Cod sursa (job #233665) | Cod sursa (job #1472422) | Cod sursa (job #2305502) | Cod sursa (job #2579592) | Cod sursa (job #1698515)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int ge,v[100][100];
int sortare(int v[100][100])
{
int aux,ok;
do
{
ok=1;
for(int i=1;i<ge;i++)
if(v[i][1]<v[i+1][1])
{
aux=v[i][1];
v[i][1]=v[i+1][1];
v[i+1][1]=aux;
aux=v[i][2];
v[i][2]=v[i+1][2];
v[i+1][2]=aux;
ok=0;
}
}while(ok!=1);
do
{
ok=1;
for(int i=1;i<ge;i++)
if(v[i][1]==v[i+1][1])
if(v[i][2]>v[i+1][2])
{
v[i][2]=v[i+1][2];
v[i+1][2]=aux;
ok=0;
}
}while(ok!=1);
}
int main()
{
int w,s=0,s1=0;
f>>ge>>w;
for(int i=1;i<=ge;i++)
f>>v[i][1]>>v[i][2];
for(int i=1;i<=ge;i++)
s=s+v[i][1];
if(s<w) g<<-1;
else
{
s=0;
int i=1;
sortare(v);
while(s<w)
{
s=s+v[i][1];
s1=s1+v[i][2];
i++;
}
g<<s1;
}
}