归并之后别忘记取模啊
两个链表的第一个公共结点
http://www.nowcoder.com/questionTerminal/6ab1d9a29e88450685099d45c9e31e46
int ans = 0; //[l,r) void merge_sort(vector<int>&A, int l, int r, int *T) { if(r-l >1) { int mid = l+(r-l)/2; int ll = l, rr = mid,i = l; merge_sort(A, l, mid, T); merge_sort(A, mid, r, T); while(ll<mid || rr < r) { if(rr>=r || (ll<mid && A[ll]<=A[rr])) T[i++]=(A[ll++]); else { T[i++]=(A[rr++]); ans += mid - ll; } } for(int i = l;i < r;i ++) A[i] = T[i]; } return; } int InversePairs(vector<int> data) { int * tmp = new int[data.size() + 10]; merge_sort(data, 0, data.size(),tmp); return ans; }