在看组合数学,看到逆序列这个概念.于是YY了一道题:已知逆序列,求出原序列. 例子: 元素个数 n = 8 逆序列 a={5,3,4,0,2,1,1,0} 则有原序列 p={4,8,6,2,5,1,3,7} 思路蛮简单的,但是复杂度是O(2*N*lgN)的,不知道有没有O(N)的算法. bit维护点[1,i]的所有空位置,则可以知道这个数列是单调递增的. 每一次去找满足i的逆序列ai+1的最左的空位pos(因为考虑不包括当前位置的空位数),然后更新[pos-1,n]所有空位-1(在pos处插入i