T79958 [YNOI2019 T3]逆序对

题目描述

对于一个数列来说,如果一个排在前面的数大于一个排在后面的数,则称这两个数构成一个逆序对。例如数列{2, 5, 1, 3, 4},它的逆序对有(2, 1)、(5, 1)、(5, 3)、(5, 4)共4 个。 给定一个数列,请你计算出它共有多少个逆序对。

输入格式

输入文件名为inv.in。 每个输入文件包含多组数据。 输入文件的第一行,包含一个正整数T,代表该输入文件中所含的数据组数。 接下来是T组数据,每组数据的格式如下: 每组数据包含2 行; 第一行包含一个整数n,代表数列中元素的个数,其中0 < n ≤ $10^{4}$; 第二行包含n个整数,两个数之间以一个空格隔开,代表数列中的元素ki,其中$-10^{7}$ ≤ ki ≤ $10^{7}$。

输出格式

输出文件名为inv.out。 输出文件包含T行,分别对应T组数据的答案,即每组数据所表示的数列中逆序对的个数。

说明/提示

对于40%的数据:0 < n ≤ $10^{2}$,−$-10^{7}$ ≤ ki ≤ $10^{7}$。 对于80%的数据:0 < n ≤ $10^{3}$,$-10^{7}$ ≤ ki ≤ $10^{7}$。 对于100%的数据:0 < n ≤ $10^{2}$,$-10^{7}$ ≤ ki ≤ $10^{7}$。