#include <stdio.h>
#include <stdlib.h>
FILE *f,*g;
/*void quick_sort (int *a, int n) {
int i, j, p, t;
if (n < 2)
return;
p = a[n / 2];
for (i = 0, j = n - 1;; i++, j--) {
while (a[i] < p)
i++;
while (p < a[j])
j--;
if (i >= j)
break;
t = a[i];
a[i] = a[j];
a[j] = t;
}
quick_sort(a, i);
quick_sort(a + i, n - i);
}*/
void qsort1(int *a,int st,int dr)
{
int i=st,j=dr,p,aux;
p=a[(i+j)/2];
while(i<=j){
while (a[i] < p)
i++;
while (p < a[j])
j--;
if(i<j){
aux = a[i];
a[i] = a[j];
a[j] = aux;
}
i++;
j--;
}
if(st<j)
qsort1(a,st,j);
if(dr>i)
qsort1(a,i,dr);
}
int main()
{
int a[900],i,j,n,nr=0,s=0,k=0,z=0,ok;
f=fopen("nrtri.in","r");
g=fopen("nrtri.out","w");
fscanf(f,"%d",&n);
for(i=0;i<n;i++)
fscanf(f,"%d",&a[i]);
// for(i=0;i<n;i++)
// printf("%d ",a[i]);
qsort1(a,0,n-1);
// printf("\n");
// for(i=0;i<n;i+fclose(f);+)
// printf("%d ",a[i]);
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
{
ok=1;
s=a[i]+a[j];
if (z>0) k=z+1;
else k=j+1;
for(;k<n&&ok;k++)
if (s>a[k]) nr++;
else if(s==a[k])
{
nr++;
z=k;
ok=0;
}
}
fprintf(g,"%d",nr);
fclose(f);
fclose(g);
return 0;
}