#646. 6、三角形个数

6、三角形个数

说明

有一个包含 N 个元素的数组 L[1..N]。选择数组的 3 个不同下标:
i,j,k,满足 i<j<k,就构成下标对(i,j,k)。
如果下标对(i,j,k)满足以下所有条件,那么该下标对就是“优质对”:4
1、令 A = L[i] + L[j]
2、令 B = L[j] + L[k]
3、令 C = L[k] + L[i]
4、如果 A、B、C 都是非负数,而且以 A、B、C 作为三条边,能构成三角形。
你的任务是:给出 L 数组[1..N],可以有多少个不同的“优质对”?

输入格式

第一行,一个整数 N。 1 <= N <= 200000。
接下来有 N 行,第 i 行是一个整数 L[i]。 -1000000000<=L[i]<=1000000000

输出格式

一个整数。
3
-2 -3 -5
0

提示

样例输入
4
1 4 6 -45
样例输出
1
数据范围
70%的数据, 1 <= N <= 100。
温馨提示
答案可能会很大,可能要用 long long。

来源

2019镇赛