#include "shoes.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define em emplace
const int maxn = 1e5 + 5;
int n;
queue<int> qu[maxn][2];
int pa[2*maxn];
int ord[maxn], cnt;
int fw[2*maxn];
ll res;
void upd(int i, int val){
++i;
for(;i<=n;i+=i&-i) fw[i] += val;
}
int query(int i){
++i;
int sum = 0;
for(;i>0;i-=i&-i) sum += fw[i];
return sum;
}
ll count_swaps(vector<int> s) {
n = s.size();
for(int i=0;i<n;++i){
int ss = abs(s[i]);
bool c = s[i] > 0;
if(!qu[ss][!c].empty()){
int l = qu[ss][!c].front();
qu[ss][!c].pop();
pa[l] = i;
}
else{
qu[ss][c].em(i);
ord[cnt++] = i;
}
upd(i, i);
upd(i+1, -i);
}
for(int i=0;i<cnt;++i){
int rr = query(pa[ord[i]]);
if(s[ord[i]] > s[pa[ord[i]]]) ++res;
res += (rr - i*2 - 1);
upd(ord[i]+1, 1);
upd(pa[ord[i]], -1);
}
return res;
}