Pagini recente » Cod sursa (job #3031875) | Cod sursa (job #1527453) | Cod sursa (job #1490942) | Cod sursa (job #2313379) | Cod sursa (job #237206)
Cod sursa(job #237206)
#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;
}