&最长上升子序列
3 4 1 5 2 7 6
g[i]//表示最长上升长度为i时,最小的数值
例如:
1 8 6 10 7
g[1] = 1
g[2] = 8->6
g[3] = 10->7
for(int i = 1; i <= n; i++){
a[i] 和前面所有值比较
}
&树状数组求顺序对,-_-!
3 4 1 5 2 7 6
1 2 3 4 5 6 7
0 从1-2没有被标记的
1 从1-3找有几个数字标记了
0 从1-0
3 从1-4有三个标记了
1 从1-1有一个标记了
5 从1-6有5个标记了
5 从1-5有5个标记了
加在一起,可以得到顺序对的个数
&树状数组求最长上升子序列
3 4 1 5 2 7 6
1 2 3 4 5 6 7
1
2
1
3 从1-4找最大值
2
4
4
标签:10,lcs,树状,标记,关于,lis,最长
From: https://www.cnblogs.com/caterpillor/p/18058277