Cod sursa(job #25125)

Utilizator Adriana_SAdriana Sperlea Adriana_S Data 4 martie 2007 10:56:30
Problema Puteri Scor 40
Compilator cpp Status done
Runda preONI 2007, Runda 3, Clasa a 10-a Marime 0.76 kb
#include <stdio.h>

const int N_MAX = 100010;

struct elem {
	int doi, trei, cinci;
} v[N_MAX];

int cmmdc(int a, int b)
{
	if (b == 0) {
		return a;
	} else {
		return (cmmdc(b, a % b));
	}
}

int pr(int a, int b, int c)
{
	if (cmmdc(cmmdc(a, b), c) == 1) {
	   return 1;
	}

	return 0;
}	

int main()
{
	freopen("puteri.in", "r", stdin);
	freopen("puteri.out", "w", stdout);

	int N, i, j;
	scanf("%d\n", &N);
	for (i = 1; i <= N; i ++) {
		scanf("%d %d %d\n", &v[i].doi, &v[i].trei, &v[i].cinci);
	}

	long long rez = 0;
	int a, b, c;
	for (i = 1; i < N; i ++) {
		for (j = i + 1; j <= N; j ++) {
			a = v[i].doi + v[j].doi;
			b = v[i].trei + v[j].trei;
			c = v[i].cinci + v[j].cinci;

			if (!pr(a, b, c)) {
				rez ++;
			}
		}
	}
	
	printf("%lld\n", rez);
	
	return 0;
}