Cod sursa(job #286280)

Utilizator swift90Ionut Bogdanescu swift90 Data 23 martie 2009 17:18:08
Problema Sum Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.4 kb
#include<stdio.h>
int nr[100100];
int main(){
	freopen("sum.in","r",stdin);
	freopen("sum.out","w",stdout);
	int n,x,i,j;
	scanf("%d",&n);
	for(i=2;i<=100010;++i)
		nr[i]=i;
	for(i=2;i<=100010;++i){
		if(nr[i]==i){
			for(j=i;j<=100010;j+=i)
				nr[j]=(nr[j]/i)*(i-1);
		}
	}
	for(i=0;i<n;++i){
		scanf("%d",&x);
		printf("%d\n",2*x*nr[x]);
	}
	fclose(stdin);
	fclose(stdout);
	return 0;
}