Cod sursa(job #129769)

Utilizator savimSerban Andrei Stan savim Data 30 ianuarie 2008 09:17:17
Problema Medie Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <stdio.h>  
int i,j,n,nrtot;  
int a[9010],nr[7010],fol[14010];  
  
int main()  
{  

   freopen("medie.in","r",stdin);  
   freopen("medie.out","w",stdout);  

   scanf("%d",&n);  
   for (i=1; i<=n; i++)  
   {  
       scanf("%d",&a[i]);  
       nr[a[i]]++;  
   }  
   for (i=1; i<=n-1; i++)
	for (j=i+1; j<=n; j++)
		if (a[i]>a[j])
		{
			int x=a[i];
			a[i]=a[j];
			a[j]=x;
		}
   for (i=1; i<=n-1; i++)
      for (j=i+1; j<=n; j++)  
//      if ((a[i]+a[j])%2==0)  
//         fol[(a[i]+a[j])/2]++;                       
		   if ((a[i]<<1)>a[j] && nr[(a[i]<<1)-a[j]]!=0) fol[a[i]]++;
            
   nrtot=0;  
   for (i=1; i<=14000; i++)  
       if (fol[i]!=0 && nr[i]!=0) nrtot+=nr[i]*fol[i]-nr[i]*(nr[i]-1);         

   printf("%d\n",nrtot);  
       
       
   return 0;      
}