#include <iostream>
#include <vector>
using namespace std;
const int Mx = 1<<17;
int seen[Mx], ft[Mx];
vector<int> vec[Mx];
void Add(int i, int v){
for (; i; i -= i & -i)
ft[i] += v;
}
int get(int i, int ans = 0){
for (; i < Mx; i += i & -i)
ans += ft[i];
return ans;
}
long long count_swaps(vector<int> v){
long long n = v.size() / 2, ans = 0;
for (int i=0;i<n+n;i++){
int s = abs(v[i]);
if (vec[s].size() == 0 or v[vec[s].back()] == v[i]){
Add(i, 1);
vec[s].push_back(i);
}
else{
int j = vec[s][0];
ans += i - j - (v[i] > 0);
Add(j, -1);
vec[s].erase(begin(vec[s]));
}
}
return ans;
}