def f(k)
gets
as=gets.split(" ").map{|e| e.to_i+k}.sort
as2=[]
n=as[0]
c=0
as.each{|e|
if e==n then
c+=1
else
as2<<[n,c]
c=1
n=e
end
}
as2<<[n,c]
return as2
end
k=gets.to_i
as1=f(k)
bs1=f(0)
p1=0
p2=0
ans=0
while p1<as1.size && p2<bs1.size
t1=as1[p1][0]
t2=bs1[p2][0]
if t1==t2 then
ans+=as1[p1][1]*bs1[p2][1]
p1+=1
p2+=1
elsif t1<t2 then
p1+=1
else
p2+=1
end
end
puts ans
ZGVmIGYoaykKCWdldHMKCWFzPWdldHMuc3BsaXQoIiAiKS5tYXB7fGV8IGUudG9faStrfS5zb3J0CglhczI9W10KCW49YXNbMF0KCWM9MAoJYXMuZWFjaHt8ZXwKCQlpZiBlPT1uIHRoZW4KCQkJYys9MQoJCWVsc2UKCQkJYXMyPDxbbixjXQoJCQljPTEKCQkJbj1lCgkJZW5kCgl9CglhczI8PFtuLGNdCglyZXR1cm4gYXMyCmVuZAprPWdldHMudG9faQphczE9ZihrKQpiczE9ZigwKQpwMT0wCnAyPTAKYW5zPTAKd2hpbGUgcDE8YXMxLnNpemUgJiYgcDI8YnMxLnNpemUKCXQxPWFzMVtwMV1bMF0KCXQyPWJzMVtwMl1bMF0KCWlmIHQxPT10MiB0aGVuCgkJYW5zKz1hczFbcDFdWzFdKmJzMVtwMl1bMV0KCQlwMSs9MQoJCXAyKz0xCgllbHNpZiB0MTx0MiB0aGVuCgkJcDErPTEKCWVsc2UKCQlwMis9MQoJZW5kCmVuZApwdXRzIGFucw==