#include <bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int fen[N];
bool d[N];
void add(int x,int v)
{
x++;
while(x<N)
{
fen[x]+=v;
x+=(x&-x);
}
}
int get(int i)
{
i++;
int cur=0;
while(i>0)
{
cur+=fen[i];
i-=(i&-i);
}
return cur;
}
long long count_swaps(vector<int> a)
{
long long ans=0;
int n=a.size()/2;
map<int,set<int>> ind;
for(int i=0;i<2*n;i++)ind[-a[i]].insert(i),add(i,1),d[i]=0;
for(int i=0;i<2*n;i++)
{
if(d[i])continue;
int j=(*ind[a[i]].begin());
// cout<<"fu "<<i<<' '<<a[i]<<' '<<j<<' '<<a[j]<<' '<<get(i)<<' '<<get(j)<<endl;
ans+=get(j)-get(i)-(a[i]<0);
add(j,-1);
add(i,-1);
d[i]=d[j]=1;
ind[-a[j]].erase(j);
ind[-a[i]].erase(i);
}
return ans;
}
// int main()
// {
// int n;
// cin>>n;
// vector<int> s(2*n);
// for(int i=0;i<2*n;i++)
// {
// cin>>s[i];
// }
// cout<<count_swaps(s)<<endl;
// }