Cod sursa(job #949379)

Utilizator predatorGigi Valoare predator Data 13 mai 2013 17:07:07
Problema Mins Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<fstream>
#include<algorithm>
#define inf -1000100
using namespace std;
ifstream f("mins.in");
ofstream g("mins.out");
long long e[1000100],v[1000100];
long long a,i,j,n,m,c,d,S;
int main ()
{
	f>>c>>d;
	c--;
	d--;
	n=min(c,d);
	m=max(c,d);
	for(i=1;i<=n;++i)
		e[i]=m;
	for(i=2;i<=n;++i)
		if(!v[i])
		{
			a=m/i;
			for(j=i;j<=n;j+=i)
			{
				v[j]++;
				e[j]-=a;
			}
			a=i*i;
			for(j=a;j<=n;j+=a)
			{
				v[j]=inf;
			}
		}
		else
		if(v[i]>1)
		{
			a=m/i;
			if(v[i]%2)
				for(j=i;j<=n;j+=i)
					e[j]-=a;
			else
				for(j=i;j<=n;j+=i)
					e[j]+=a;
		}
	for(i=1;i<=n;++i)
		S+=e[i];
	g<<S;
	return 0;
}