Pagini recente » Cod sursa (job #3204668) | Cod sursa (job #1015983) | Cod sursa (job #1538868) | Cod sursa (job #2770675) | Cod sursa (job #2180774)
#include<cstdio>
using namespace std;
int c,d;
int nr[1000005];
bool p[1000005];
void ciur(int n)
{
for(int i=2;i<=n;++i)
{
if(nr[i])
continue ;
for(int j=i;j<=n;j+=i)
++nr[j];
if(n/i<i)
continue;
for(int j=i*i;j<=c;j+=i*i)
p[j] = 1;
}
}
int main()
{
freopen("mins.in","r",stdin);
freopen("mins.out","w",stdout);
scanf("%d %d",&c,&d);
if(c>d)
{
int aux=c;
c=d;
d=aux;
}
c--;
d--;
ciur(c);
long long ans=c*d;
for(int i=2;i<=c;++i)
{
if(p[i])
continue ;
if(nr[i]%2==0)
ans=ans+(c/i)*(d/i);
else
ans=ans-(c/i)*(d/i);
}
printf("%lld\n",ans);
return 0;
}