const maxn=100000;
type mang=array[0..maxn+2] of longint;
var a:mang; n,i:longint; res:int64;
function cinv(len:longint;var a:mang):int64;
var i,j,k,nl,nr:longint;
x,y,z:int64;
l,r:mang;
begin
if (len<=1) then begin cinv:=0; exit; end;
nl:=len div 2; nr:=len-nl;
for i:=0 to nl-1 do l[i]:=a[i];
for i:=nl to len-1 do r[i-nl]:=a[i];
x:=cinv(nl,l); y:=cinv(nr,r);
j:=0; r[nr]:=maxlongint; l[nl]:=maxlongint;
z:=0;
for i:=0 to nl-1 do begin
while l[i]>r[j] do inc(j);
z:=z+j;
end;
i:=0;j:=0;
for k:=0 to len-1 do begin
if (l[i]<=r[j]) then begin
a[k]:=l[i]; inc(i);
end else begin
a[k]:=r[j]; inc(j);
end;
end;
cinv:=x+y+z;
end;
begin
assign(input,''); reset(input);
assign(output,''); rewrite(output);
//readln(n); for i:=0 to n-1 do read(a[i]);
n:=maxn; for i:=0 to n-1 do a[i]:=n-i;
res:=cinv(n,a);
write(res);
close(input); close(output);
end.
Y29uc3QgbWF4bj0xMDAwMDA7CnR5cGUgbWFuZz1hcnJheVswLi5tYXhuKzJdIG9mIGxvbmdpbnQ7CnZhciBhOm1hbmc7IG4saTpsb25naW50OyAgICAgIHJlczppbnQ2NDsKZnVuY3Rpb24gY2ludihsZW46bG9uZ2ludDt2YXIgYTptYW5nKTppbnQ2NDsKdmFyIGksaixrLG5sLG5yOmxvbmdpbnQ7CiAgICB4LHksejppbnQ2NDsKICAgIGwscjptYW5nOwpiZWdpbgogICAgaWYgKGxlbjw9MSkgdGhlbiBiZWdpbiBjaW52Oj0wOyAgICAgICAgICBleGl0OyBlbmQ7CiAgICBubDo9bGVuIGRpdiAyOyAgICAgICAgbnI6PWxlbi1ubDsKICAgIGZvciBpOj0wIHRvIG5sLTEgZG8gbFtpXTo9YVtpXTsKICAgIGZvciBpOj1ubCB0byBsZW4tMSBkbyByW2ktbmxdOj1hW2ldOwogICAgeDo9Y2ludihubCxsKTsgICAgICAgICAgICAgeTo9Y2ludihucixyKTsKICAgIGo6PTA7ICAgICAgICAgICAgICAgICAgIHJbbnJdOj1tYXhsb25naW50OyAgICAgICAgbFtubF06PW1heGxvbmdpbnQ7CiAgICB6Oj0wOwogICAgZm9yIGk6PTAgdG8gbmwtMSBkbyBiZWdpbgogICAgICAgICAgd2hpbGUgbFtpXT5yW2pdIGRvIGluYyhqKTsKICAgICAgICAgIHo6PXorajsKICAgIGVuZDsKICAgICBpOj0wO2o6PTA7CiAgICBmb3Igazo9MCB0byBsZW4tMSBkbyBiZWdpbgogICAgICAgICAgaWYgKGxbaV08PXJbal0pIHRoZW4gYmVnaW4KICAgICAgICAgICAgICAgYVtrXTo9bFtpXTsgICAgIGluYyhpKTsKICAgICAgICAgIGVuZCBlbHNlIGJlZ2luCiAgICAgICAgICAgICAgIGFba106PXJbal07ICAgICBpbmMoaik7CiAgICAgICAgICBlbmQ7CiAgICBlbmQ7CiAgICBjaW52Oj14K3krejsKZW5kOwpiZWdpbgogICAgYXNzaWduKGlucHV0LCcnKTsgICAgICAgICAgcmVzZXQoaW5wdXQpOwogICAgYXNzaWduKG91dHB1dCwnJyk7ICAgICAgICByZXdyaXRlKG91dHB1dCk7CiAgICAvL3JlYWRsbihuKTsgICAgICBmb3IgaTo9MCB0byBuLTEgZG8gICByZWFkKGFbaV0pOwogICAgbjo9bWF4bjsgICAgICAgICAgZm9yIGk6PTAgdG8gbi0xIGRvICAgYVtpXTo9bi1pOwogICAgcmVzOj1jaW52KG4sYSk7CiAgICB3cml0ZShyZXMpOwogICAgY2xvc2UoaW5wdXQpOyAgICAgICAgICAgICAgICAgIGNsb3NlKG91dHB1dCk7CmVuZC4=