Pagini recente » Cod sursa (job #1073367) | Cod sursa (job #848324) | Cod sursa (job #1610253) | Cod sursa (job #2030499) | Cod sursa (job #297833)
Cod sursa(job #297833)
#include <cstdio>
using namespace std;
#define Nmax 20011
#define Lmax 200
int v[Nmax],n,frecv[Lmax+1],gmax,suma,lmax,g,i,j,nr,sol[Nmax];
inline int max(int a, int b)
{
return a>b?a:b;
}
inline int min(int a, int b)
{
return a<b?a:b;
}
void read_data()
{
freopen("ghiozdan.in","r",stdin);
freopen("ghiozdan.out","w",stdout);
scanf("%d %d", &n,&g);
for (i=0;i<n;++i)
{
scanf("%d", &v[i]);
lmax=max(lmax,v[i]);
frecv[v[i]]++;
}
}
void solve()
{
gmax=g;
nr=0;
for (i=Lmax;i>=1;--i)
{
if (g>=i && frecv[i]!=0)
{
frecv[i]--;
g-=i;
nr++;
sol[nr]=i;
}
}
}
void write_data()
{
printf("%d %d\n", gmax,nr);
for (i=1;i<=nr;++i)
printf("%d\n", sol[i]);
}
int main()
{
read_data();
solve();
write_data();
return 0;
}