题意

让我们在数串统计最长长度的LIS有多少个 每个LIS元素没有重叠

分析

这题可以用nlogn的LIS方法水过
就是每次我们更新找到的LIS长度的时候 就把当前位置下的元素标记
表示我们把它删掉了
不断地重复找LIS的过程 最后如果找到的长度小于我们最初找到的LIS长度 就退出循环
复杂度大概在O(number of LIS * n * logn)

code


#include<bits/stdc++.h>
using namespace std;
vector<int>v,ans;
map<int,int>bok;//由于数据范围不明确直接用map比较省内存
int main()
{int n;while(~scanf("%d",&n)){for(int i=1;i<=n;i++){int t;scanf("%d",&t);v.push_back(t); }int Ma = 0,res=0,at=0;while(1){Ma=0;// 初始化为0 ans.clear();ans.push_back(-1);// 保证一定能查到元素下界for(int i=0;i<n;i++){if(bok[i])continue; if(v[i]>ans[ans.size()-1])ans.push_back(v[i]),Ma++,bok[i]=1;else if(v[i]<=ans[ans.size()-1]){int pos = lower_bound(ans.begin(),ans.end(),v[i])-ans.begin();ans[pos] = v[i];}}       if(Ma>res)res = Ma,at=1;else if(Ma==res)at++;else if(Ma<res)break;}printf("%d\n%d\n",res,at);bok.clear();ans.clear();v.clear(); }return 0;
}

一开始没发现有多组 。。。 读题啊。。。

HDU-3998 Sequence LIS统计相关推荐

  1. HDU - 5919 Sequence II——主席树+区间种类++逆序建树

    [题目描述] HDU - 5919 Sequence II [题目分析] 题目给定一个数组,每次查询一个区间,找出区间内不同数字的个数x,然后输出按出现顺序第x/2向上取整个数字的位置. 按照要求,我 ...

  2. HDU 3397 Sequence operation(线段树)

    HDU 3397 Sequence operation 题目链接 题意:给定一个01序列,有5种操作 0 a b [a.b]区间置为0 1 a b [a,b]区间置为1 2 a b [a,b]区间0变 ...

  3. hdu 3397 Sequence operation(线段树,lazy,区间合并)

    hdu 3397 Sequence operation 线段树lazy和区间合并结合的一个题,相当于几个题集中到一起嘛,分开想就好了 0,1,2操作都要lazy,2的异或操作找到每一只含1或只含0的区 ...

  4. HDU 5919 Sequence II 主席树

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5919 Sequence II Time Limit: 9000/4500 MS (Java/Othe ...

  5. HDU - 3564 Another LIS(LIS+线段树)

    http://acm.hdu.edu.cn/showproblem.php?pid=3564 题意 给出1~n的插入顺序,要求每次插入之后的LIS 分析 首先用线段树还原出最终序列.因为插入的顺序是按 ...

  6. hdu 5312 Sequence(数学推导——三角形数)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5312 Sequence Time Limit: 2000/2000 MS (Java/Others)  ...

  7. HDU 6078Wavel Sequence

    [题目链接]http://acm.hdu.edu.cn/showproblem.php?pid=6078 题目意思 给定两个数组问你同时满足波浪的波浪数.不理解可以看题目提示部分 解题思路 首先从a数 ...

  8. 【HDU 1735】字数统计(贪心,有缺陷的一道题)

    题目分析: 告知有m段,第一行一定带领一段,所以要找出另外m-1段. 由于题目要求最少有多少字被破坏,所以我们要找出的m-1段要求被破损的最少,即是"好"的部分最多. 满足一段开头 ...

  9. 数论分块练习([CF830 C]Bamboo Partition + [hdu 6395]Sequence )

    文章目录 T1:Sequence title solution T2:Bamboo Partition title solution code T1:Sequence title 传送 solutio ...

最新文章

  1. 哪个版本python适用于windows-何种版本的Python适合您
  2. Linux系统下的数据镜像备份工具——Rsync
  3. 如何在PySide中使用qrc资源文件
  4. Spring源码学习笔记1
  5. nio java 内核拷贝_大文件拷贝,试试NIO的内存映射
  6. 【LINUX】Oracle数据库 linux磁盘头数据损坏修复
  7. 关于jinja2的{{...|safe}}过滤器
  8. JS_13原型与原型链
  9. 国货在崛起,八成都做对了这件事
  10. Python字符串的encode与decode 解决乱码问题
  11. Fragment懒加载(三)
  12. iOS 史上最详细的app测试或者上架AppStore流程
  13. 使用计算机打印汉子文档,电子科技大学《计算机应用基础(本科)》20春期末考试【标准答案】...
  14. win10下rdlc报表在vs(visual studio)中中文显示小方块的批量处理解决方法
  15. 5份简洁大方的个人简历模板,让你轻松应对面试
  16. oracel的安装和卸载
  17. 2.4G超低功耗射频芯片NRF24L01P和SI24R1和CI24R1的区别
  18. 信息系统项目管理师必背核心考点(四十八)合同类型的选择
  19. vsftp登录失败_VSFTP虚拟账户无法登陆530 Login incorrect错误解决方法 | 系统之家官网...
  20. 利用python打开Matlab的mat文件

热门文章

  1. ThinkPHP 3.2.3 关联模型的使用
  2. can't load apple.laf.AquaLookAndFeel (Ant in Eclipse can't find it
  3. Ubuntu 8.04下Netbeans的字体反锯齿解决(转)
  4. C# 繁体,简体 互转
  5. BeanUtil使用例子:解析并转化HttpServletRequest到Bean的全面测试
  6. post提交,WPF,Silverlight(加深记忆写一遍)
  7. .net Redis缓存优化提高加载速度和服务器性能(一)
  8. php ajax mysql 分页查询_PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
  9. 微信小程序 - 用户进入客服会话会在右下角显示可能要发送的小程序提示
  10. WebStorm取消默认style样式折叠