Cod sursa(job #927210)

Utilizator tudorv96Tudor Varan tudorv96 Data 25 martie 2013 17:45:29
Problema Medie Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
#include <algorithm>
#include <iostream>
using namespace std;

#define in "medie.in"
#define out "medie.out"
#define N 9005

short v[N], n, f[N];
long long sol;

int main ()
{
	ifstream fin (in);
	fin >> n;
	for (int i = 0; i < n; ++i)
		fin >> v[i], f[v[i]]++;
	fin.close();
	for (int i = 0; i < n; ++i)
		for (int j = i + 1; j < n; ++j)
			if (!((v[i] + v[j]) & 1)) {
				short medie = (v[i] + v[j]) >> 1;
				if (f[medie]) {
					if (v[i] == v[j])
						sol += (f[medie] - 2);
					else
						sol += f[medie];
				}
			}
	ofstream fout (out);
	fout << sol;
	fout.close();
	return 0;
}