Cod sursa(job #270446)

Utilizator ooctavTuchila Octavian ooctav Data 3 martie 2009 23:43:37
Problema Pairs Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <stdio.h>
#include <stdlib.h>


int e[100005];
char c[800001];
int comparare(const void * a,const void * b)
{
	return (*(int*)a - *(int*)b );
}
void parsare(FILE *f1)
{
	int nr=1,x=0,i;
	fread(c,800001,1,f1);
	for(i=1;c[i]!=0;i++)
		if(c[i]==' ' || c[i]=='\n')
			e[nr++]=x;
		else
			x=10*x+c[i]-'0';
}
int main()
{
	int i,j,a,b,r,d=0,n;
	FILE *f1,*f2;
	f1=fopen("pairs.in","r");
	f2=fopen("pairs.out","w");
	fscanf(f1,"%d",&n);
	parsare(f1);
	qsort(e,n+1,sizeof(int),comparare);
	for(i=1;i<=n;i++)
			for(j=i+1;j<=n;j++)
			{
					a=e[i];
					b=e[j];
					while(b)
					{
						r=a%b;
						a=b;
						b=r;
					}
					if(a==1)	d++;
			}
	fprintf(f2,"%d",d);
	fclose(f1);
	fclose(f2);

	return 0;
}