在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007
class Solution {
public:
int count;
int InversePairs(vector<int> d) {
count=0;
mergesort(d,0,d.size()-1);
return count%1000000007;
}
void mergesort(vector<int> &a,int begin,int end)
{
if(begin>=end)
return ;
int mid=(begin+end)/2;
mergesort(a,begin,mid);
mergesort(a,mid+1,end);
merge(a,begin,mid,end);
}
void merge(vector<int> &a,int begin,int mid,int end)
{
vector <int> tmp(end-begin