Cod sursa(job #418491)

Utilizator titusuTitus C titusu Data 15 martie 2010 22:27:05
Problema Medie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
using namespace std;
#include <fstream>

int a[10000],v[10000], n, fr[10000] ;

int main(){
	ifstream fin("medie.in");
	fin>>n;
	for(int i=1;i<=n;++i)
		fin>>a[i], fr[a[i]]++;
	for(int i=1;i<=n;++i)
		for(int j=i+1;j<=n;++j)
			if(((a[i]+a[j])&1) ==0){
				++v[(a[i]+a[j])>>1];
			}
	long long int s=0;
	for(int i=1;i<=n;++i){
		s+=v[a[i]];
		int c=fr[a[i]];
		if(c>1){
			s -= (c*(c-1))>>1;
			s += ((c-1)*(c-2))>>1;
		}
	}
	ofstream fout("medie.out");
	fout<<s<<endl;
	return 0;
}