Pagini recente » Cod sursa (job #348756) | Cod sursa (job #609120) | Cod sursa (job #3164116) | Cod sursa (job #462388) | Cod sursa (job #1797001)
#include<fstream>
using namespace std;
ifstream f("mins.in");
ofstream g("mins.out");
int mini,i,j,n,m,ok[1<<20],c[1<<20];
long long sol;
int main()
{
f>>n>>m;
--n;--m;
mini=min(n,m);
for(i=2;i<=mini;++i)
if(!c[i])
{
for(j=i;j<=mini;j+=i)
++c[j];
if(mini/i<i) continue;
for(j=i*i;j<=mini;j+=i*i)
ok[j]=1;
}
sol=1LL*m*n;
for(i=2;i<=mini;++i)
if(!ok[i])
(c[i]&1)?sol-=1LL*(n/i)*(m/i):sol+=1LL*(n/i)*(m/i);
g<<sol;
return 0;
}