Cod sursa(job #237206)

Utilizator SeldonHari Seldon Seldon Data 29 decembrie 2008 11:53:16
Problema Fractii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include <iostream>
#include <cstdlib>
#include<fstream>
#define dim 1000000
using namespace std;

ifstream f("fractii.in");
ofstream g("fractii.out");

void fi(long long n, long long *v)
     {//functia lui euler cu ciurul lui Eratostene
     //http://infoarena.ro/forum/index.php?topic=2512.0
      //v[i] = nr intregilor pozitivi <i si primi cu i
      
       long long i,j;
       for( i=1;i <= n;i++) v[i]=i-1;
       for( i=2;i <= n;i++)
	for(j=i+i;j<=n;j=j+i)
	v[j]=v[j]-v[i];
     }


int main()
{
long long n, *v,i,s=0;
v = new long long [dim];
f>>n;
fi(n,v);
for(i=2;i<=n;i++)
s=s+v[i];
delete v;
g<<2*s+1;
f.close();
g.close();
 return EXIT_SUCCESS;
}