100 atcoder#ABC143D. [ABC143D] Triangles

[ABC143D] Triangles

题目描述

高橋君は、互いに区別出来る N N 本の棒を持っています。i i 本目の棒の長さは Li L_i です。

高橋君は、これらのうち 3 3 本の棒を使って三角形を作ろうとしています。このとき、棒の長さを a, b, c a,\ b,\ c として、以下の条件がすべて成り立たなければなりません。

  • a < b + c a\ <\ b\ +\ c
  • b < c + a b\ <\ c\ +\ a
  • c < a + b c\ <\ a\ +\ b

作れる三角形は何種類あるでしょうか。ただし、2 2 つの三角形は、そのうち一方にのみ使われている棒が存在するときに異なるとします。

输入格式

入力は以下の形式で標準入力から与えられる。

N N L1 L_1 L2 L_2 ... ... LN L_N

输出格式

作れる三角形が何種類あるかを出力せよ。

题目大意

【问题描述】

ZZNN条木棍,每条木棍的长度为DiD_i。他想在这NN条木棍中选择三条,让这三条木棍能构成一个三角形。小ZZ想知道有多少种方案能构成三角形(不同的方案定义为一条木棍在其中一个三角形中出现不在另一个中出现)。

【输入格式】

输入第一行一个整数NN,表示木棍的个数。

第二行NN个整数DiD_i,表示木棍的长度。

【输出格式】

输出一个整数,表示构成三角形的方案数。

【样例说明】

样例11:只能形成一个三角形:由第一,第二和第三根木棍形成的三角形。

样例22:无法形成三角形。

【数据规模与约定】

对于100%100\%的数据,3N2×1033 \leq N \le 2×10^31Di1031\le D_i \le10^3

4
3 4 2 1
1
3
1 1000 1
0
7
218 786 704 233 645 728 389
23

提示

制約

  • 入力は全て整数
  • 3 < = N < = 2 × 103 3\ <\ =\ N\ <\ =\ 2\ \times\ 10^3
  • 1  Li  103 1\ \leq\ L_i\ \leq\ 10^3

Sample Explanation 1

作れる三角形は、1 1 2 2 3 3 番目の棒から成る三角形のみです。

Sample Explanation 2

作れる三角形はありません。