当前位置: 首页 > news >正文

最长子序列长度(LIS)--个数遍历的二分+贪心优化

B3637 最长上升子序列 - 洛谷

 

#include<bits/stdc++.h>
#include<string>
using namespace std;
#define N 100011
typedef long long ll;
typedef pair<int,int> pii;
int n;
int g[N]; 
int dp[N];
int ma=0;
int main()
{
cin>>n;
memset(g,0x3f,sizeof(g));///g[i]记录是子序列为i-1(主要从0开始)时 的最小值 
for(int i=1;i<=n;i++)
{int x;cin>>x;int pos=lower_bound(g,g+n,x)-g;///找到第一个>=x的位置///则pos-1是小于x的,则x就是pos这个子序列长度的当前最小值 g[pos]=x;dp[i]=pos+1;///dp[i]以第i个数结尾的最长子序列长度 ma=max(pos+1,ma);
}
cout<<ma;
return 0;
}

 

 

http://www.dtcms.com/a/143167.html

相关文章:

  • React Article模块
  • 【后端开发】Spring日志
  • 得物官网sign签名逆向分析
  • HashMap 初步理解 put 操作流程 HashMap 的线程安全问题
  • JVM笔记【一】java和Tomcat类加载机制
  • Visio导出清晰图片步骤
  • 工业级向量检索核心技术:IVF-PQ原理与全流程解析
  • Promise 使用介绍
  • 当HTTP遇到SQL注入:Java开发者的攻防实战手册
  • UE学习记录part19
  • cesium中postProcessStages全面解析
  • 哔哩哔哩工具箱:BiliTools v1.3.2
  • 网络开发基础(游戏)之 Socket API
  • REC: 引爆全球万亿级市场!Web3+消费革命重塑全球-东南亚-跨境商业未来
  • [HCIP] OSPF 综合实验
  • 高速系统设计简介
  • 背包 DP 详解
  • PyTorch 深度学习实战(38):注意力机制全面解析(从Seq2Seq到Transformer)
  • 将 DeepSeek 集成到 Spring Boot 项目实现通过 AI 对话方式操作后台数据
  • 为什么 waitress 不支持 WebSocket?
  • python文件类操作:json/ini配置文件、logging日志统计、excel表格数据读写、os操作库
  • 多模态融合(十一): SwinFusion——武汉大学马佳义团队(二)
  • Java中包装类和泛型
  • 导出excel文件并在页面自动下载
  • TCP/IP、UDP、HTTP、HTTPS、WebSocket 一文讲解
  • 从零开始搭建CLIP模型实现基于文本的图像检索
  • elementUI中MessageBox.confirm()默认不聚焦问题处理
  • UML-共享汽车系统通信图深度解析
  • 蓝桥杯练习题2
  • Codeforces Educational Round 177 Div. 2 【B题,C待补