Pagini recente » Cod sursa (job #1028855) | Cod sursa (job #21263) | Cod sursa (job #1891030) | Cod sursa (job #1118356) | Cod sursa (job #2284941)
#include <fstream>
#include <iostream>
using namespace std;
int min1,max1,v[10010],i,j,cp,sol,ok,c,d,m,x,y,div;
bool ciur[1000010];
int main()
{
ifstream fin ("mins.in");
ofstream fout ("mins.out");
fin>>c>>d;
min1=min(c,d);
max1=max(c,d);
for(div=2;div*div<=min1;div++)
{
if(ciur[div]==0)
{
m++;
v[m]=div;
for(i=div*div;i<=min1;i=i+div)
ciur[i]=1;
}
}
if(div==v[m]) div++;
for(i=div;i<=min1;i++)
{
if(ciur[i]==0)
{
m++;
v[m]=i;
}
}
for(x=2;x<=min1;x++)
{
for(y=1;y<=x;y++)
{
i=1;
ok=1;
cp=y;
while(v[i]*v[i]<=cp&&ok)
{
if(cp%v[i]==0)
{
if(x%v[i]==0) {ok=0;break;}
while(cp%v[i]==0) {cp=cp/v[i];}
}
i++;
}
if(cp!=1&&x%cp==0) ok=0;
if(ok==1) sol++;
}
}
for(x=min1+1;x<=max1;x++)
{
for(y=1;y<=x;y++)
{
i=1;
ok=1;
cp=y;
while(v[i]*v[i]<=cp&&ok)
{
if(cp%v[i]==0)
{
if(x%v[i]==0) {ok=0;break;}
while(cp%v[i]==0) cp=cp/v[i];
}
i++;
}
if(cp!=1&&x%cp==0) ok=0;
if(ok==1) sol++;
}
}
fout<<sol;
return 0;
}