Pagini recente » Cod sursa (job #564050) | Diferente pentru planificare intre reviziile 131 si 125 | Cod sursa (job #179695) | Cod sursa (job #1974381) | Cod sursa (job #1520461)
# include <algorithm>
# include <cstdio>
int V[1000000] ;
int N, nr ;
long long sol ;
int comp ( void ) {
return ++nr ;
}
int main ( void ) {
fscanf ( fopen ( "fractii.in", "r" ) , "%d", &N ) ;
std :: generate_n ( V + 1, N, comp ) ;
for ( int i = 2; i <= N; sol += V[i++] ) {
if ( V[i] == i ) {
for ( int j = i ; j <= N; j += i ) {
V[j] -= V[j] / i;
}
}
}
fprintf ( fopen ( "fractii.out", "w" ) , "%lld", sol * 2 + 1 ) ;
}