Cod sursa(job #99116)
| Utilizator | Data | 10 noiembrie 2007 21:27:09 | |
|---|---|---|---|
| Problema | Fractii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.39 kb |
#include <iostream.h>
#include <fstream.h>
fstream in("fractii.in",ios::in),out("fractii.out",ios::out);
int n,i,j,TOTEM[1000001],NOTPRIM[1000001]; long long solutie;
int main()
{in>>n;
for(i=2;i<=n;++i)
TOTEM[i]=i;
for(i=2;i<=n;++i)
{
if(NOTPRIM[i]==0) for(j=i;j<=n;j+=i)
{NOTPRIM[j]=1; TOTEM[j]/=i; TOTEM[j]*=i-1;}
solutie+=TOTEM[i];}
out<<1+(solutie << 1);}
