Cod sursa(job #112099)

Utilizator RobytzzaIonescu Robert Marius Robytzza Data 3 decembrie 2007 08:28:19
Problema Economie Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream.h>
#include <values.h>
long a[50020],n,S=0,maxx=-MAXINT;
void citire(){
ifstream fin("economie.in");
fin>>n;
long x;
for (long i=0;i<n;i++) {
      fin>>x;
      if (x>maxx)
	 maxx=x;
      a[x]=1;
      }
fin.close();
}

void numarare(){
for (long i=0;i<=maxx+2;i++)
   if (a[i]==1){
      S++;
      for (long m=0;m<=maxx+2;m++)
	if (a[m]>0)
      for (long j=1;j<=maxx+2;j++)
	 if (i*j+m>(maxx+2))
	    break;
	 else
	    a[i*j+m]=2;
   }
}
int main(){
ofstream fout("economie.out");
citire();
numarare();
fout<<S<<"\n";
for (long i=0;i<=50000;i++)
   if (a[i]==1)
       fout<<i<<"\n";
fout<<"\n";
fout.close();
return 0;
}