ll@n,@(x,y)[n],p=0,q=0,r=0,s=0,a,i,j; coordcomp(n,x); coordcomp(n,y); sortA(n,y,x); for(i=0;i<n;){ a=y[i]; for(j=i;j<n&&y[j]==a;++j){ } s+=i*(j-i); i=j; } sortA(n,x,y); for(i=0;i<n;){ a=x[i]; for(j=i;j<n&&x[j]==a;++j){ } r+=i*(j-i); i=j; } fenwick<ll>f; f.malloc(n,1); for(i=0;i<n;){ a=x[i]; for(j=i;j<n&&x[j]==a;++j){ p+=f.range(0,y[j]-1); q+=f.range(y[j]+1,n-1); } for(j=i;j<n&&x[j]==a;++j){ f.add(y[i],1); } i=j; } wt((p-q)/sqrt(r*s));