n=int(input())
l=list(map(int,input().split()))
l.sort()
x=[0]*(10**3+1)
y=[]
for i in range(n):
    x[l[i]]+=1
for i in range(10**3+1):
    if i==0:
        y.append(0)
    else:
        y.append(y[i-1]+x[i])
y.append(y[len(y)-1])
ans=0
for i in range(n):
    for j in range(n):
        if i!=j:
            a=min(l[i],l[j])
            b=max(l[i],l[j])
            m=b-a
            M=min(a+b,10**3+1)
            g=y[M-1]-y[m]
            ans+=g
            if m<a<M:
                ans-=1
            if m<b<M:
                ans-=1
print(ans//6) n=int(input()) n int(input()) int input() input l=list(map(int,input().split())) l list(map(int,input().split())) list map(int,input().split()) map int input().split() ().split () input split l.sort() l.sort l sort x=[0]*(10**3+1) x [0]*(10**3+1) [0] 0 10**3+1 10**3 10 3 1 y=[] y [] for i in range(n):
    x[l[i]]+=1 i range(n) range n x[l[i]]+=1 x[l[i]] x l[i] l i 1 for i in range(10**3+1):
    if i==0:
        y.append(0)
    else:
        y.append(y[i-1]+x[i]) i range(10**3+1) range 10**3+1 10**3 10 3 1 if i==0:
        y.append(0)
    else:
        y.append(y[i-1]+x[i]) i==0 i 0 y.append(0) y.append y append 0 y.append(y[i-1]+x[i]) y.append y append y[i-1]+x[i] y[i-1] y i-1 i 1 x[i] x i y.append(y[len(y)-1]) y.append y append y[len(y)-1] y len(y)-1 len(y) len y 1 ans=0 ans 0 for i in range(n):
    for j in range(n):
        if i!=j:
            a=min(l[i],l[j])
            b=max(l[i],l[j])
            m=b-a
            M=min(a+b,10**3+1)
            g=y[M-1]-y[m]
            ans+=g
            if m<a<M:
                ans-=1
            if m<b<M:
                ans-=1 i range(n) range n for j in range(n):
        if i!=j:
            a=min(l[i],l[j])
            b=max(l[i],l[j])
            m=b-a
            M=min(a+b,10**3+1)
            g=y[M-1]-y[m]
            ans+=g
            if m<a<M:
                ans-=1
            if m<b<M:
                ans-=1 j range(n) range n if i!=j:
            a=min(l[i],l[j])
            b=max(l[i],l[j])
            m=b-a
            M=min(a+b,10**3+1)
            g=y[M-1]-y[m]
            ans+=g
            if m<a<M:
                ans-=1
            if m<b<M:
                ans-=1 i!=j i j a=min(l[i],l[j]) a min(l[i],l[j]) min l[i] l i l[j] l j b=max(l[i],l[j]) b max(l[i],l[j]) max l[i] l i l[j] l j m=b-a m b-a b a M=min(a+b,10**3+1) M min(a+b,10**3+1) min a+b a b 10**3+1 10**3 10 3 1 g=y[M-1]-y[m] g y[M-1]-y[m] y[M-1] y M-1 M 1 y[m] y m ans+=g ans g if m<a<M:
                ans-=1
             m<a<M m<a m a M ans-=1 ans 1 if m<b<M:
                ans-=1 m<b<M m<b m b M ans-=1 ans 1 print(ans//6) print ans//6 ans 6 g=y[M-1]-y[m] y[M-1]-y[m] g l=list(map(int,input().split())) list(map(int,input().split())) l ans-=1 1 ans a=min(l[i],l[j]) min(l[i],l[j]) a ans+=g g ans y=[] [] y ans=0 0 ans M=min(a+b,10**3+1) min(a+b,10**3+1) M m=b-a b-a m b=max(l[i],l[j]) max(l[i],l[j]) b x=[0]*(10**3+1) [0]*(10**3+1) x n=int(input()) int(input()) n ans-=1 1 ans
n=int(input())
l=list(map(int,input().split()))
l.sort()
x=[0]*(10**3+1)
y=[]
for i in range(n):
    x[l[i]]+=1
for i in range(10**3+1):
    if i==0:
        y.append(0)
    else:
        y.append(y[i-1]+x[i])
y.append(y[len(y)-1])
ans=0
for i in range(n):
    for j in range(n):
        if i!=j:
            a=min(l[i],l[j])
            b=max(l[i],l[j])
            m=b-a
            M=min(a+b,10**3+1)
            g=y[M-1]-y[m]
            ans+=g
            if m<a<M:
                ans-=1
            if m<b<M:
                ans-=1
print(ans//6)