Pagini recente » Diferente pentru problema/arborigami intre reviziile 13 si 12 | Cod sursa (job #2102016) | Cod sursa (job #2502668) | Diferente pentru problema/cuantictiori intre reviziile 79 si 31 | 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 ) ;
}