Pagini recente » Cod sursa (job #1087712) | Cod sursa (job #1157145) | Cod sursa (job #2134845) | Cod sursa (job #603634) | Cod sursa (job #3237139)
#include <fstream>
using namespace std;
ifstream cin("mins.in");
ofstream cout("mins.out");
int multipli[1000005];
int main()
{
int c,d;
cin>>c>>d;
///nr de sol a problemei e nr de perechi (x,y) cu x,y prime(coprime)
long long int necoprime=0;
for(int i=2; i<=min(c-1,d-1); i++)
{
if(multipli[i]==1)
continue;
if(multipli[i]==0)
{
necoprime+=((c-1)/i)*((d-1)/i);
for(int j=i*2; j<=min(c-1,d-1); j+=i)
multipli[j]++;
}
else
{
necoprime-=((c-1)/i)*((d-1)/i);
for(int j=i*2; j<=min(c-1,d-1); j+=i)
multipli[j]--;
}
}
cout<<(long long)(c-1)*(d-1)-necoprime;
return 0;
}