看到题目吓了一跳,区间翻转?确实不会,不过读题后,发现不是翻转,是顺移, 区间的每个元素后移一位,最后一个移到最前面.
求区间的 a[i]<a[j]&&i<j 的对数, 正序对,就是树状数组的getSum(a[i]-1),查询在a[i]之前,已经有多少个<a[i]的数更新到树状数组.
至于区间顺移,除了开始和结尾,中间一段的不变,也就是要看a[s+1]到a[e]里比a[s]大的,比a[s]小的,如果比a[s]小,则对正序数贡献+1,大就-1.
注意:数字的范围只有1W,所以树状数组不用300W,会MLE.....