Pagini recente » Cod sursa (job #2139622) | Cod sursa (job #798298) | Cod sursa (job #3231239) | Cod sursa (job #2612306) | Cod sursa (job #338782)
Cod sursa(job #338782)
#include <iostream>
using namespace std;
#define NMAX 1000001
int phi[NMAX];
int main()
{
int C, D, i, j;
long long ret = 1;
freopen("mins.in","r",stdin);
freopen("mins.out","w",stdout);
cin >> C >> D;
if ( C > D )
swap(C,D);
--C, --D;
for ( i = 2; i <= D; ++i )
if ( !phi[i] )
{
ret += i - 1;
if ( i <= C ) ret += i - 1;
for ( j = 2 * i; j <= D; j += i )
if ( !phi[j] )
phi[j] = j - j/i;
else
phi[j] -= phi[j]/i;
}
else
{
ret += phi[i];
if ( i <= C ) ret += phi[i];
}
if ( C == 0 || D == 0 ) ret = 0;
cout << ret;
return 0;
}