Pagini recente » Cod sursa (job #544727) | Cod sursa (job #1248778) | Cod sursa (job #824008) | Cod sursa (job #1684399) | Cod sursa (job #1698490)
#include <bits/stdc++.h>
const int DIM = 1 << 20;
using namespace std;
int Phi[DIM], C, D; long long sol = 1;
int main() {
FILE *input_file = fopen( "mins.in" , "r" );
FILE *output_file = fopen( "mins.out", "w" );
fscanf( input_file, "%d%d", &C, &D );
C--, D--;
if (C>D) swap(C, D);
for( int i = 1; i <= D; i ++ )
Phi[i] = min(i, C + 1);
for( int i = 2; i <= D; i ++ ) {
if( Phi[i] != i && Phi[i] != C + 1)
continue;
Phi[i] --;
for( int j = i + i; j <= D; j += i )
Phi[j] = ( Phi[j] / i ) * ( i - 1 );
}
for( int i = 2; i <= C; i ++ )
sol += 2 * Phi[i];
for (int i = C + 1; i <= D; ++i)
sol += Phi[i];
fprintf( output_file, "%lld\n", sol );
return 0;
}