Pagini recente » Cod sursa (job #364730) | Cod sursa (job #62142) | Cod sursa (job #3279247) | Cod sursa (job #1227937) | Cod sursa (job #871672)
Cod sursa(job #871672)
// economie.cpp : Defines the entry point for the console application.
//
//#include "stdafx.h"
#include "fstream"
#include "algorithm"
#include<vector>
#include<cstdio>
#include<cmath>
using namespace std;
int compare (const void * a, const void * b)
{
return ( *(int*)a - *(int*)b );
}
ifstream f("economie.in");
ofstream g("economie.out");
int sume[50001],sir[1000],sol[1000],tot,i,nr;
void citire()
{
f>>nr;
for (i=0;i<nr;i++)
f>>sir[i];
for(i=1;i<=50000;i++)
sume[i]=0;
}
void rezolvare()
{
std::sort(sir,sir+nr);
for(i=0;i<nr;i++)
{
if(sir[0]==1)
{
tot++;
sol[0]=1;
return ;
}
sume[0]=1;
for(i=0;i<nr;i++)
{
if(sume[sir[i]]==0)
{
sol[tot]=sir[i];
tot++;
}
int q;
for(q=0;sir[i]+q<=sir[nr-1];q++)
if(sume[q])
sume[sir[i]+q]=1;
}
}
}
void afisare()
{
g<<tot<<"\n";
for(i=0;i<tot;i++)
g<<sol[i]<<"\n";
}
int main()
{
citire();
rezolvare();
afisare();
return 0;
}