Pagini recente » Cod sursa (job #670074) | Cod sursa (job #2860975) | Cod sursa (job #2832842) | Cod sursa (job #2313356) | Cod sursa (job #2839104)
#include <bits/stdc++.h>
using namespace std;
ifstream in("mins.in");
ofstream out("mins.out");
typedef long long ll;
const int lim=1e6+4;
bool ok[lim];
int prod[lim];
int cnt[lim];
int c,d;
ll el;
int main()
{
in>>c>>d; --c,--d;
if(c>d) swap(c,d);
for(int i=1;i<=c;++i)
prod[i]=1;
for(int i=2;i<=c;++i)
{
if(!ok[i])
{
for(int j=i;j<=c;j+=i)
ok[j]=true,
prod[j]*=i,
++cnt[j];
}
if(prod[i]==i)
{
if(cnt[i]%2==1)
el+=1LL*(c/i)*(d/i);
else el-=1LL*(c/i)*(d/i);
}
}
out<<1LL*c*d-el<<'\n';
return 0;
}