#How many (r,g,b) st r>g+b ? N=int(input()) inf=float("inf") R=list(map(int,input().split())) G=list(map(int,input().split())) B=list(map(int,input().split())) M=max(max(R),max(G),max(B)) X=[0]*(M+1); Y=[0]*(M+1); Z=[0]*(M+1) for i in range(N): X[R[i]]+=1 Y[G[i]]+=1 Z[B[i]]+=1 Z_cum=[0]*(M+1) for i in range(1,M+1): Z_cum[i]=Z_cum[i-1]+Z[i] K=0 for a in range(1,M+1): for b in range(1,a+1): p=a-b K+=X[a]*Y[b]*(Z_cum[a]-Z_cum[p]) print(K)