Cod sursa(job #60478)

Utilizator crawlerPuni Andrei Paul crawler Data 14 mai 2007 20:12:40
Problema Medie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <cstdio>

using namespace std;

int v[9192], nr[8192];

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

  int i,j,n, sol = 0, tmp;

  scanf("%d",&n);

  for(i=0;i<n;++i)
   {
    scanf("%d",v+i);
    ++nr[v[i]];
   }

  nr[0] = 1;

  for(i=0;i<n;++i)
   {
    tmp = v[i];
    for(j=0;j<tmp;++j,--tmp)
     sol += (nr[j]*nr[tmp]);

    --sol;
     
    tmp = nr[v[i]];
    tmp = ((tmp-1)*(tmp-2))>>1;
    if(tmp > 0)
     sol += tmp;
   }

  printf("%d\n",sol);

  return 0;
 }