Pagini recente » Cod sursa (job #3245168) | Cod sursa (job #1537449) | Cod sursa (job #2737388) | Cod sursa (job #2567225) | Cod sursa (job #1205887)
#include <cstdio>
#include <algorithm>
#define Vmax 7005
using namespace std;
int fr[Vmax],left[Vmax];
int main()
{
int N,x,valmax=0,i,j,ultpoz=0;
long long sol=0,nr;
freopen ("medie.in","r",stdin);
freopen ("medie.out","w",stdout);
scanf("%d", &N);
for(i=1;i<=N;++i)
{
scanf("%d", &x);
++fr[x]; valmax=max(valmax,x);
}
for(i=1;i<=valmax;++i)
{
left[i]=ultpoz;
if(fr[i])
ultpoz=i;
}
for(i=1;i<=valmax;++i)
{
nr=(fr[i]-1)*(fr[i]-2)/2;
for(j=i-1;j;j=left[j])
nr+=fr[j]*fr[2*i-j];
sol+=1LL*fr[i]*nr;
}
printf("%lld\n", sol);
return 0;
}