#D0988. 完美数对

完美数对

题目描述

对于两个整数 xx 和 yy,记 pp 为 ∣x−y∣|x-y| 与 ∣x+y∣|x+y| 中较大的一个,qq 为其中较小的一个;再记 ss 为 ∣x∣|x| 与 ∣y∣|y| 中较大的一个,tt 为其中较小的一个。如果同时满足 p≥sp\ge s 且 q≤tq\le t,就称 (x,y)(x,y) 是一个完美数对。

给定 nn 个整数 a1,a2,…,ana_1,a_2,\dots,a_n,请你统计有多少对下标 (i,j)(i,j) 满足 i<ji<j 且 (ai,aj)(a_i,a_j) 是完美数对。

输入格式

第一行一个整数 nn。

第二行 nn 个整数 a1,a2,…,ana_1,a_2,\dots,a_n,相邻两个整数之间用一个空格隔开。

输出格式

一行一个整数,表示完美数对的数量。

样例

4
-9 6 -2 1
2
3
2 1 0
1
5
3 3 3 3 3
10
3
1 10 100
0

样例解释

样例 1 中,只有 (−9,6)(-9,6) 与 (−2,1)(-2,1) 两对满足条件,共 22 对。

样例 2 中,只有 (2,1)(2,1) 一对满足条件。

样例 3 中,5 个数两两之间都满足条件,任意一对都算,共 (52)=10\binom{5}{2}=10 对。

样例 4 中,任意两数相差都太大,没有一对满足条件。

数据范围与约定

子任务 分值 限制
11 3030 1≤n≤20001\le n\le 2000,0≤ai≤1090\le a_i\le 10^9
22 1≤n≤1051\le n\le 10^5,0≤ai≤1090\le a_i\le 10^9
33 4040 1≤n≤2×1051\le n\le 2\times 10^5,−109≤ai≤109-10^9\le a_i\le 10^9

对于 100%100\% 的数据,1≤n≤2×1051\le n\le 2\times 10^5,−109≤ai≤109-10^9\le a_i\le 10^9。