Pagini recente » Cod sursa (job #2303040) | Monitorul de evaluare | Monitorul de evaluare | Istoria paginii onis-2016/clasament/runda-1 | Cod sursa (job #297848)
Cod sursa(job #297848)
#include <cstdio>
using namespace std;
#define Nmax 20011
#define Lmax 200
int v[Nmax],n,frecv[Lmax+1],gmax,suma,lmax,g,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()
{
int i;
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()
{
int i,j;
gmax=g;
nr=0;
for (i=Lmax;i>=1;--i)
if (g>=i && frecv[i]!=0)
frecv[i]--,
g-=i,
sol[++nr]=i;
}
void write_data()
{
int i,j;
printf("%d %d\n", gmax-g,nr);
for (i=1;i<=nr;++i)
printf("%d\n", sol[i]);
}
int main()
{
read_data();
solve();
write_data();
return 0;
}