Cod sursa(job #24493)

Utilizator axl_gnrMarius Gheorghe axl_gnr Data 2 martie 2007 17:35:02
Problema Fractii Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<stdio.h>
#include<string.h>
#include<iostream.h>

long n;


void erathostene()
{   long eul[1000001];
     char p[1000001];
 long i, j, pr, q;
 long rap;
 long long s=1;

 for(i=1; i<=n; i++)
  eul[i]=i;

 for(i=2; i<=n; i++)
  if(p[i]==0)
   {
    eul[i]=eul[i]-1;
    for(j=i+i; j<=n; j+=i)
      {
       p[j]=1;
       rap=eul[j]/i;
       eul[j]=eul[j]-rap;
      }
   }


FILE *f=fopen("fractii.out", "w");

 for(i=2; i<=n; i++)
  // printf("%d\n",eul[i]);
   s=s+2*eul[i];
 //fstream g("fractii.out",ios::out);
  //g<<s;
 // g.close();

fprintf(f, "%ld", s);
fclose(f);
}


int main()
{
 FILE *f=fopen("fractii.in", "r");
 fscanf(f,"%lld", &n);
 fclose(f);
  //fstream f("fractii.in",ios::in);
  //f>>n;
  //f.close();


 erathostene();

 return 0;

}