Cod sursa(job #721167)

Utilizator fhandreiAndrei Hareza fhandrei Data 23 martie 2012 13:24:50
Problema Medie Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
//Include
#include <cstdio>
#include <vector>
using namespace std;

//Constante
const int MAX_SIZE = 9001;
const int MAX_VAL = 7001;

//Variabile
int n;
int medie;
int perechi;
int numere[MAX_SIZE];

vector<int> sume[MAX_VAL];
vector<int>::iterator it, end;

//Main
int main()
{
	freopen("medie.in", "rt", stdin);
	freopen("medie.out", "wt", stdout);
	scanf("%d", &n);
	
	for(int i=1 ; i<=n ; ++i)
	{
		scanf("%d", &numere[i]);
		sume[numere[i]].push_back(i);
	}
	
	for(int i=1 ; i<n ; ++i)
	{
		for(int j=i+1 ; j<=n ; ++j)
		{
			if((numere[i] + numere[j]) % 2)
				continue;
			medie = (numere[i] + numere[j]) / 2;
			
			end = sume[medie].end();
			for(it=sume[medie].begin() ; it!=end ; ++it)
				if(*it !=i && *it !=j)
					++perechi;
		}
	}
	
	printf("%d", perechi);
	
	
	fclose(stdin);
	fclose(stdout);
	return 0;
}