Cod sursa(job #531166)

Utilizator tudorsTudor Siminic tudors Data 8 februarie 2011 23:31:04
Problema Sum Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <stdio.h>
using namespace std;
int n,t,z;
long long rez;
int A[100001];

FILE *f,*g;

void solve()
{
	int i,j;
	for (i=1;i<=100000;i++)
		A[i]=i-1;
	for (i=2;i<=100000;i++)
		for (j=2*i;j<=100000;j+=i)
			A[j]-=A[i];
}

int main()
{
	f=fopen("sum.in","r");
	g=fopen("sum.out","w");
	fscanf(f,"%d",&t);
	solve();
	for (z=1;z<=t;z++)
	{
		fscanf(f,"%d",&n);
		rez=A[n]*n*2;
		fprintf(g,"%lld \n",rez);
	}
	fclose(f);
	fclose(g);
	return 0;
}