Cod sursa(job #146382)

Utilizator vlad_olteanVladimir Oltean vlad_oltean Data 1 martie 2008 17:18:26
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include<fstream>
using namespace std;

int main()
{
    long long n;
    char prim[2000001];
    int count=0;
    long long sol[1001];
    long long i,j;

    ifstream fin("ciur.in");
    ofstream fout("ciur.out");
    fin>>n;
    
    prim[0]=0; prim[1]=0;
    for(i=2;i<=n;i++) prim[i]=1;
    
    for(i=2;i<=n;i++)
         if(prim[i])
         {    j=i;  // Elimin toti multiplii
              while(i*j<=n)
              {     prim[i*j]=0;
                    j++;
              }
              if(count==1000) break;
              sol[count]=i;
              count++;
         }
    
    fout<<count<<endl;
    for(i=0;i<count;i++)
         fout<<sol[i]<<' ';
         
    fin.close();
    fout.close();
    return 0;
}