Ultra-QuickSort

In this problem, you have to analyze a particular sorting algorithm. The algorithm processes a sequence of $n$ distinct integers by swapping two adjacent sequence elements until the sequence is sorted in ascending order. For the input sequence

9 1 0 5 4 ,

Ultra-QuickSort produces the output

0 1 4 5 9 .

Your task is to determine how many swap operations Ultra-QuickSort needs to perform in order to sort a given input sequence.

Input begins with a line that contains a single integer $1 \le n \le 500\, 000$ – the length of the input sequence. Each of the the following $n$ lines contains a single integer $0 \le a[i] \le 999\, 999\, 999$, the $i$-th input sequence element.

Prints a single line containing an integer number op, the minimum number of swap operations necessary to sort the given input sequence.

Sample Input 1 | Sample Output 1 |
---|---|

5 9 1 0 5 4 |
6 |

Sample Input 2 | Sample Output 2 |
---|---|

3 1 2 3 |
0 |