Pagini recente » Cod sursa (job #2689773) | Cod sursa (job #3125999) | Cod sursa (job #3165257) | Cod sursa (job #2560825) | Cod sursa (job #850440)
Cod sursa(job #850440)
#include <fstream>
using namespace std;
const char InFile[]="input.txt";
const char OutFile[]="output.txt";
const int MaxM=1000001;
ifstream fin(InFile);
ofstream fout(OutFile);
long long c, d, sol;
int M, P[MaxM];
char D[MaxM];
int main()
{
fin >> c >> d;
fin.close();
M = max(c , d);
for(int i = 2; i < M; ++i)
{
if(!P[i])
{
for(int j = i; j < M; j += i)
{
++P[j];
if((j / i) % i == 0)
{
D[j] = 1;
}
}
}
}
--c;
--d;
sol = c * d;
for(int i = 2; i < M; ++i)
{
if(!D[i])
{
if(P[i] & 1)
{
sol -= (c / i) * (d / i);
}
else
{
sol += (c / i) * (d / i);
}
}
}
fout << sol;
fout.close();
return 0;
}