#include #define pb push_back #define NMAX 50005 #define ll long long #define x first #define y second using namespace std; int cf[]={2,3,5,7},nr,a,b; int numere[10]; map mp; int v[2*NMAX],n; inline int lsb(int x) { return ((x&(x - 1)) ^ x); } void update_aib(int poz, int val) { while (poz <= 2*n) { v[poz] += val; poz += lsb(poz); } } int sum_aib(int poz) { int s = 0; while (poz > 0) { s += v[poz]; poz -= lsb(poz); } return s; } pair query[NMAX]; bool comp(pair a, pair b) { return a.second>b.second; } int main() { int i,x,total=0; cin>>n; for(i=1;i<=2*n;++i) { cin>>x; if(query[x].x==0) query[x].x=i; else query[x].y=i; } sort(query+1,query+n+1,comp); for(i=1;i<=n;++i) { total+=sum_aib(query[i].y)-sum_aib(query[i].x-1); update_aib(query[i].x,1); update_aib(2*n,-1); update_aib(query[i].y,1); } cout<