lis树状数组输出路径

题目
设有由n个不相同的整数组成的数列,记为:b(1)、b(2)、……、b(n)且b(i)<>b(j) (i<>j),若存在1<2<3< … < e 且有b(i)<b(2)< … <b(e)则称为长度为e的不下降序列。程序要求,当原数列出之后,求出最长的上升序列。
例如13 7 9 16 38 24 37 18 44 19 21 22 63 15。例中13 16 18 19 21 22 63就是一个长度为7的不下降序列,同时也有7 9 16 18 19 21 22 63长度为8的不下降序列。

如标题,要求用树状数组,并输出路径。已知数值作下标,但数一样怎么办?麻烦讲透一点

题目要求对任意i < j,则b(i) < b(j),因此如果原数列中有两个或多个相等的数,那么不下降序列里最多只能含有其中的一个数。