Pagini recente » Cod sursa (job #1064800) | Cod sursa (job #1355842) | Cod sursa (job #1718070) | Cod sursa (job #2804651) | Cod sursa (job #2663738)
#include <fstream>
using namespace std;
ifstream cin("fractii.in");
ofstream cout("fractii.out");
int phi[1000100];
long long sum[1000010];
void ciur_phi(int n)
{
int i,j;
phi[1]=1;
for(i=2; i<=n; i+=2)
phi[i]=i/2;
for(i=3; i<=n; i+=2)
if(!phi[i])
{
phi[i]=i-1;
for(j=(i<<1); j<=n; j+=i)
{
if(phi[j]==0)
phi[j]=j;
phi[j]=phi[j]/i*(i-1);
}
}
}
void sume_partiale(int n)
{
int i;
for(i=1;i<=n;i++)
sum[i]=sum[i-1]+phi[i];
}
int main()
{
int n;
cin>>n;
ciur_phi(n);
sume_partiale(n);
cout<<sum[n]*2-1;
return 0;
}