题意:
有n个人每人有一个力气值Si,美丽值Bi,满足Bi>Bj&&Si>Sj 或者 Bi<Bj&&Si<Sj 的人可以
一起参见晚会,问最多有多少人可以一起参见晚会。
思路: 我们根据S从小到大将所有人排序,然后看B最长的上升子序列的长度求出来即可!
在排序中优先对S排序,S相等的则对B进行由大到小的排序,why?
也就是对于S相同的,我们先选取B最大的值插入LIS中,因为比如 S1=1, B1 = 1
S1=1, B1 = 2, S1=1, B1 = 3, 如果不进行排序,直接按照求B中的lis,显然长度
为3,显然是不对的,因为相同的S中只能选择一个B出来!所以就要对S相同的B进行
降序排序! 这样就变成了一个裸lis!

View Code