Pagini recente » Cod sursa (job #1011230) | Cod sursa (job #1454312) | Cod sursa (job #660874) | Cod sursa (job #2682877) | Cod sursa (job #696327)
Cod sursa(job #696327)
#include<math.h>
using namespace std;
int c[100000]={0},n,p=1;
void ciur()
{
for(int i=2;i<=n;++i)
if(!c[i])
for(int j=i*i;j<=n;++j)
c[j]=1;
}
int euler(int a)
{
int s=sqrt(a),re=a;
for(int i=2;i<=s;++i)
if(!c[i])
if(a%i==0)
re=re/i*(i-1);
return re*2;
}
int main()
{
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%d",&n);
ciur();
for(int i=2;i<=n;++i)
p+=euler(i);
printf("%d",&p);
return 0;
}