Cod sursa(job #139413)

Utilizator andrei.12Andrei Parvu andrei.12 Data 20 februarie 2008 09:07:15
Problema Sum Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include<stdio.h>

#define nmax 100000

int i, j, x, n, pt[nmax+1];
long long rsp;
int main()
{
	freopen("sum.in", "rt", stdin);
	freopen("sum.out", "wt", stdout);
	
	for (i = 1; i <= nmax; i ++)
		pt[i] = i-1;
	for (i = 1; i <= nmax; i ++)
		for (j = 2*i; j <= nmax; j += i)
			pt[j] -= pt[i];
	
	scanf("%d", &n);
	for (i = 1; i <= n; i ++){
		scanf("%d", &x);
		
		rsp = (long long)2*pt[x]*x;
		printf("%lld\n", rsp);
	}
	
	return 0;
}