Cod sursa(job #65037)

Utilizator anna_bozianuBozianu Ana anna_bozianu Data 6 iunie 2007 19:08:20
Problema Sum Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.43 kb
#include<stdio.h>
long long int n,i,j,fi[100001],x,k;
int main()
{
	FILE *f,*g;
	f=fopen("sum.in","r");
	g=fopen("sum.out","w");
	fscanf(f,"%lld",&n);
	fi[1]=1;
	for(i=2;i<=100000;i++)
	if(!fi[i])
	 for(j=i;j<=100000;j=j+i)
	  { if(!fi[j])fi[j]=1;
	    k=j/i;fi[j]*=i-1;
	    while(k%i==0){fi[j]*=i;k/=i;}
	  }
	for(i=1;i<=n;i++)
	{fscanf(f,"%lld",&j);
	 fprintf(g,"%lld\n",2*j*fi[j]);}
	fcloseall();
	return 0;
}