Cod sursa(job #431241)

Utilizator mottyMatei-Dan Epure motty Data 31 martie 2010 19:56:31
Problema Medie Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<cstdio>
#include<vector>
#define aa first
#define bb second
using namespace std;

const int N=9001,V=7001;

int rez,n,c[N];

vector <int> v[V];

void read(){
	scanf("%d",&n);
	for( int i=1 ; i<=n ; ++i )
	{
		scanf("%d",&c[i]);
		v[c[i]].push_back(i);
	}
}

int bs( int ln,int cmp )
{
	if( ln>V || ln<0 )
		return 0;
	int sz=v[ln].size();
	if( ln == c[cmp] )
		return (sz-2>0 ? sz-2:0);
	return sz;
}

void solve(){
	for( int i=1 ; i<=n ; ++i )
		for( int j=i+1 ; j<=n ; ++j )
			rez+=bs( 2*c[i]-c[j],j);
}

int main(){
	freopen("medie.in","r",stdin);
	freopen("medie.out","w",stdout);
	read();
	solve();
	printf("%d\n",rez);
	return 0;
}