Cod sursa(job #979932)

Utilizator abc_meblackabc black abc_meblack Data 3 august 2013 15:41:34
Problema Sum Scor 70
Compilator c Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<stdio.h>
#include<stdlib.h>

long long int rez;
int v[1000000],n;
int nr[1000000];

FILE *fout;

void citire()
{
	FILE *f;
	int i;
	f=fopen("sum.in","rt");
	if(f==NULL)
	{
		printf("eroare");
		return;
	}
	fscanf(f,"%d",&n);
	for(i=0;i<n;i++)
		fscanf(f,"%d",&nr[i]);
}


void functie(int n)
{
	int i,j;
	for(i=2;i<=n;i++)
		v[i]=i-1;
	v[1]=1;
	for(i=2;i<=n;i++)
		for(j=2*i;j<=n;j+=i)
			v[j]-=v[i];
}
	
int main()
{
	int i;
	citire();
	fout=fopen("sum.out","wt");
	functie(100000);
	for(i=0;i<n;i++)
	{
		rez=nr[i]*v[nr[i]]*2;
		fprintf(fout,"%lld \n",rez);
	}

		fclose(fout);

	return 0;
}