Cod sursa(job #974281)
Utilizator | Data | 16 iulie 2013 18:34:29 | |
---|---|---|---|
Problema | Fractii | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.41 kb |
#include <stdio.h>
#include <stdint.h>
int main (){
long long n;
long long ar[1000001];
freopen( "fractii.in","r", stdin );
freopen( "fractii.out", "w", stdout);
scanf("%llu", &n) ;
for (long long i = 2 ; i <= n; ++i)
ar[i] = i - 1;
long long sum = 0;
for (long long j = 2; j <=n; ++j){
for (long long k = 2*j; k <=n; k+=j){
ar[k] -= ar[j];
}
sum+= ar[j];
}
printf("%llu", 2 *sum + 1);
return 0;
}