input()
a=sorted(map(abs,map(int,input().split())))
r=i=j=0
while i<len(a):
while 2*a[j]<a[i]:j+=1
r+=i-j;i+=1
print(r)
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fi first
#define se second
#define sst string
#define pb push_back
#define maxco 100000+5
#define lld long double
#define cha ios_base::sync_with_stdio(false);
#define ffl cout.flush();
#define phi acos(-1)
#define mod 1000000000
#define mp make_pair
#define pqpair priority_queue<pair<ll,ll> ,vector<pair<ll,ll>>,greater<pair<ll,ll>>>
pqpair pq;
#define INF 1000000000
#define MAXN 100009
#define pi pair<ll,ll>
ll n,m,k,s;
ll a[200009];
vector<ll> vec[100009];
ll vis[100009];
bool cur[100009];
int main(){
cha
ll n;
cin>>n;
for(ll i=1;i<=n;i++){
cin>>a[i];
a[i]=abs(a[i]);
}
sort(a+1,a+n+1);
ll ans=0;
for(ll i=1;i<n;i++){
ll lb=lower_bound(a+1, a+n+1, 2*a[i]+1)-a;
if(lb==n+1){
lb--;
}
while(a[lb]>2*a[i]){
lb--;
}
ans+=lb-i;
}
cout<<ans;
}
1598B - Groups | 1602B - Divine Array |
1594B - Special Numbers | 1614A - Divan and a Store |
2085. Count Common Words With One Occurrence | 2089. Find Target Indices After Sorting Array |
2090. K Radius Subarray Averages | 2091. Removing Minimum and Maximum From Array |
6. Zigzag Conversion | 1612B - Special Permutation |
1481. Least Number of Unique Integers after K Removals | 1035. Uncrossed Lines |
328. Odd Even Linked List | 1219. Path with Maximum Gold |
1268. Search Suggestions System | 841. Keys and Rooms |
152. Maximum Product Subarray | 337. House Robber III |
869. Reordered Power of 2 | 1593C - Save More Mice |
1217. Minimum Cost to Move Chips to The Same Position | 347. Top K Frequent Elements |
1503. Last Moment Before All Ants Fall Out of a Plank | 430. Flatten a Multilevel Doubly Linked List |
1290. Convert Binary Number in a Linked List to Integer | 1525. Number of Good Ways to Split a String |
72. Edit Distance | 563. Binary Tree Tilt |
1306. Jump Game III | 236. Lowest Common Ancestor of a Binary Tree |