Cod sursa(job #2151495)

Utilizator WebDesignbyTMGhiorghiu Ioan-Viorel WebDesignbyTM Data 4 martie 2018 15:59:27
Problema Mins Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#define DM 1000001
#define	DN 12
#include <fstream>
using namespace std;

ifstream fi ("mins.in");
ofstream fo ("mins.out");
int a, b, d, dv[DM];
long long sol;

int main()
{
	fi >> a >> b;
	if (a < b)
		swap(a, b);
	--a;
	--b;
	for (int i = 2; i <= b; ++i)
		if (dv[i] > -1)
		{
			if (!dv[i])
			{
				for (int j = i; j <= b; j += i)
					if (dv[j] > -1)
						++dv[j];
			}
			if (dv[i]%2 == 1)
				sol += 1LL*(a/i)*1LL*(b/i);
			else
				sol -= 1LL*(a/i)*1LL*(b/i);
			if (i*i <= b)
				for (int j = i*i; j <= b; j += i*i)
					dv[j] = -1;
		}
	fo << 1LL*a*b - sol;
	return 0;
}