当前位置: 首页 > 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.xdnf.cn/news/40141.html

相关文章:

  • 代码随想录背包问题完结
  • 面向AI时代与数字化转型关键期:中小企业IT人才储备计划研究分析
  • 在复杂性的迷宫里寻找路标 —— 读《人月神话》有感
  • 免费将AI生成图像放大4倍的方法
  • 如何写 commit message?
  • 细说STM32单片机FreeRTOS中断管理及其应用方法
  • 深入浅出伯努利分布:从 0‑1 随机世界到统计学习基石
  • 服务部署丨通过Docker部署AutoBangumi+qBittorrent实现自动追番
  • 云服务器性价比测评:Intel vs AMD vs Graviton
  • YuE本地部署完整教程,可用于ai生成音乐,歌曲
  • 老婆是用来爱的,不是用来吼的
  • CAN与CANFD协议说明
  • [Java · 初窥门径] Java API 文档使用说明
  • Python实例题:神经网络实现人脸识别任务
  • 离线安装elasticdump并导入和导出数据
  • 深度补全网络:如CSPN++填补稀疏点云的深度信息
  • 运筹学之遗传算法
  • 2024期刊综述论文 Knowledge Graphs and Semantic Web Tools in Cyber Threat Intelligence
  • SICAR标准功能块 FB1514 “Robot_request_FB”
  • 洛谷的几道题(2)
  • 解决win10执行批处理报编码错误
  • 【双指针】对撞指针 快慢指针 移动零
  • 文献×材料 | 基于ANSYS的刹车片环保材料分析研究
  • C 语 言 --- 指 针 3
  • IsaacSim Asserts 配置
  • [Java]反射、String类补充
  • Workflow轻量级工作流引擎实现
  • 5. 话题通信 ---- 发布方和订阅方python文件编写
  • 前端面试中高频手撕[待补充]
  • STM32单片机教程:从零开始打造智能天气时钟