INVCNT - Inversion Count
Let A[0 ... n - 1] be an array of n distinct positive integers. If i < j and A[i] > A[j] then the pair (i, j) is called an inversion of A. Given n and an array A your task is to find the number of inversions of A.
Input
The first line contains t, the number of testcases followed by a blank space. Each of the t tests start with a number n (n ≤ 200000). Then n + 1 lines follow. In the ith line a number A[i - 1] is given (A[i - 1] ≤ 107). The (n + 1)th line is a blank space.
Output
For every test output one line giving the number of inversions of A.
Example
Input: 2 3 3 1 2 5 2 3 8 6 1 Output: 2 5
hide comments
Advitiya:
2015-10-20 22:49:41
YODANESS~INVCNT :) mergesort |
|
satish9040:
2015-10-19 10:53:37
how unsorted the array is!!! :) |
|
Mateusz Kwasniak:
2015-10-15 13:31:48
Of course both div&conq and BIT will work. Good one. Last edit: 2015-10-15 13:32:09 |
|
cortana:
2015-10-14 06:01:18
datatype of count to be noted (long long int), caused me 2 WA! |
|
Sarthak Munshi:
2015-09-23 21:14:33
2 WA, 2 RE , 1 CE . But then AC using BIT ! |
|
Nitin Tiwari:
2015-09-18 23:45:58
accepted in first go |
|
MSK:
2015-09-15 15:01:38
solved using bit... awesome feeling.... :) |
|
thirupathireddy:
2015-09-05 19:00:39
long long int .....................:) leads to wrong answer.........
|
|
codeprince:
2015-09-03 19:15:18
@pvsmpraveen... 5 is number of elements that shouldn't be considered |
|
pvsmpraveen:
2015-08-31 16:21:22
i Think Inversions for Second test case is 7 .....(5,2) (5,3) (5,1) (2,1) (3,1) (8,1) (6,1)
|
Added by: | Paranoid Android |
Date: | 2010-03-06 |
Time limit: | 3.599s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: PERL6 |