Pagini recente » Cod sursa (job #1638522) | Cod sursa (job #65519) | Cod sursa (job #3173395) | Cod sursa (job #538167) | Cod sursa (job #928240)
Cod sursa(job #928240)
#include <stdio.h>
#include <algorithm>
using namespace std;
int n, m, v[1000010], i, j, t, aux;
long long a;
int main(){
freopen("mins.in", "r", stdin);
freopen("mins.out","w", stdout);
scanf("%d %d", &n, &m);
t=min(n, m)-1;
for(i=2; i<=t; i++)
{
if(!v[i])
{
for(j=i; j<=t; j+=i)
v[j]++;
if(i<=t/i)
{
aux=i*i;
for(j=aux; j<=t; j+=aux)
v[j]=-10000000;
}
}
if(v[i]>=0)
{
if(v[i] & 1)
a-=(long long)( (n-1)/i )*( (m-1)/i );
else
a+=(long long)( (n-1)/i )*( (m-1)/i );
}
}
printf("%lld\n", a+(long long)(n-1)*(m-1));
return 0;
}