Pagini recente » Cod sursa (job #1204506) | Cod sursa (job #1572872) | Cod sursa (job #100004) | Cod sursa (job #72609) | Cod sursa (job #1191643)
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
#define MAX 1000102
int a[MAX];
int brute(int x)
{
int i;
int eul=1;
for(i=2;i*i<=x;i++)
{
if(x%i==0)
{
eul*=i-1;
x/=i;
while(x%i==0)
{
eul*=i;
x/=i;
}
}
}
if(x!=1)
{
eul*=x-1;
}
return eul;
}
int main()
{
int n;
fin>>n;
int i,j;
for(i=1;i<=n;i++)
a[i]=i;
for(i=2;i<=n;i++)
if(a[i]==i){
for(j=i;j<=n;j+=i)
a[j]=a[j]/i*(i-1);
}
long long s=0;
for(i=1;i<=n;i++)
s+=a[i];
s*=2;
fout<<s-1<<endl;
fin.close();
fout.close();
return 0;
}