Cod sursa(job #109451)

Utilizator mithyPopovici Adrian mithy Data 25 noiembrie 2007 11:10:08
Problema Pairs Scor 20
Compilator cpp Status done
Runda preONI 2008, Runda 1, Clasele 11-12 Marime 0.59 kb
#include <cstdio>
#define NMax 100000

long n, a[NMax];

long cmmdc( long a, long b );
int main()
{	
	int i, j, pairs = 0;
	FILE *fin;

	fin = fopen( "pairs.in", "rt" );
	fscanf( fin, "%ld", &n );

	for (i=0; i<n; i++)
		fscanf( fin, "%ld", &a[i] );

	for (i=0; i<n-1; i++)
		for (j=i+1; j<n; j++)
			if ( cmmdc(a[i],a[j]) == 1 )
				pairs++;
	
	FILE *fout;
	fout = fopen( "pairs.out", "wt" );
	fprintf( fout, "%ld\n", pairs );
	fclose( fout );

	return 0;
}

long cmmdc( long a, long b )
{
	long r ;
	while ( b )
	{
		r = a % b;
		a = b;
		b = r;
	}
	return a;
}