Pagini recente » Diferente pentru problema/dk intre reviziile 62 si 34 | Rating Catarau Cezar-Iulian (Cezar397) | Cod sursa (job #2718513) | Cod sursa (job #2427018) | Cod sursa (job #1416940)
#include <fstream>
using namespace std;
ifstream fin("fractii.in");
ofstream fout("fractii.out");
int v[1000002],i,n,j;
unsigned long long s;
int main()
{
fin>>n;
v[1]=1;
for(i=2;i<=n;i++)
if(v[i]==0)
{
v[i]=i-1;
for(j=i*2;j<=n;j=j+i)
{
if(v[j]==0)
v[j]=j/i*(i-1);
else
v[j]=v[j]/i*(i-1);
}
}
for(i=2;i<=n;i++)
s+=v[i];
fout<<2*s+1<<'\n';
return 0;
}