Pagini recente » Cod sursa (job #1754640) | Cod sursa (job #206316) | Cod sursa (job #34490) | Cod sursa (job #691270) | Cod sursa (job #384918)
Cod sursa(job #384918)
#include<stdio.h>
long x,y,min,max,i,j,f,k,nrr;
long long nr;
long a[1000005][8];
int main()
{
freopen("mins.in","r",stdin);
freopen("mins.out","w",stdout);
scanf("%ld%ld",&x,&y);
--x;--y;
a[1][++a[1][0]]=1;
if(x<y)min=x,max=y;
else min=y,max=x;
for(i=2;i<=min;++i)
if(a[i][0]==0)
for(j=i;j<=min;j+=i)
a[j][++a[j][0]]=i;
nr=0;
for(i=2;i<=min;++i)
{nrr=i;
for(j=1;j<=a[i][0];++j)
nrr=(nrr/a[i][j])*(a[i][j]-1);
nr+=nrr;}
nr*=2;
nr=nr+max-min;
for(i=min+1;i<=max;++i)
for(j=1;j<=min;++j)
if(j==1)++nr;
else
{f=1;
for(k=1;k<=a[j][0];++k)
if(i%a[j][k]==0){f=0;break;}
nr+=f;}
++nr;
printf("%lld\n",nr);
return 0;
}