Pagini recente » Cod sursa (job #2444698) | Cod sursa (job #2536037) | Monitorul de evaluare | Cod sursa (job #2176535) | Cod sursa (job #2449917)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f ("mins.in");
ofstream g ("mins.out");
int vek[1000001];
int cek[1000001];
long long s;
int m,n,i ,j;
int main()
{
f>>m>>n;
long long nonc=0;
int minn=min(m,n);
m--;
n--;
for(i=2;i<=minn;++i)
{
if(vek[i]==0)
{
for(j=i;j<=minn;j+=i)
vek[j]++;
if(n/i>i)
for(j=i*i;j<minn;j+=i*i)
cek[i]=1;
}
}
for(i=1;i<=minn;++i)
{
if(!cek[i])
{
if(vek[i]%2==1) s-=(n/i)*(m/i);
else s+=(n/i)*(m/i);
}
}
g<<s;
return 0;
}