POJ 3670

来源:互联网 发布:数据侠客行 txt 编辑:程序博客网 时间:2024/05/21 08:37

是考察LIS和LDS问题的nlogn解法,题意是找到牛队列中不符合非升(降)序趋势的编号个数,FJ给改过来,分别比较以非升序的规则和非降序的规则找,看哪个改动的最少,数据量大,nlogn。介绍一下这个算法的实现过程:模拟一个队列,初始空。然后读入牛的编号,第一个数据入列,然后再读入的时候开始比较:读入一个编号P,则跟队列头的元素比较,若大于头元素,则入列;否则二分遍历队列中的元素,找到第一个大于(从左至右)P的元素,替换之。读入复杂度是n,二分logn,总的就是nlogn。结果

就是队列的规模。然后是3671,题目都一样,只需看输出就知道是一个纯LIS,不需考虑LDS了,将3670的代码相应部分注释掉一SuBmit就刻不容缓的呕了。