acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 竞赛
  • 讨论
  • 团队
登录
注册
题目详情提交记录(0)
  • A657.LIS最长上升子序列

    userId_undefined

    郑富活(湉)

    18阅读
    0回复
    0点赞
  • 题解(求赞)

    #include <iostream> using namespace std; /* 最长上升子序列:dp[i]表示以i位置元素作为结尾的最长长度 状态转移方程式:dp[i]=max(dp[i],dp[j]+1) j:1~i-1的每个数a[i]>a[j] 初始化:dp[i]=1 默认每个数的LIS都是1 返回结果:dp中的最大值 */ int n,a[10005],dp[10005],ans; int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; dp[i]=1; } for(int i=2;i<=n;i++){ for(int j=1;j<i;j++){ if(a[i]>a[j]){ dp[i]=max(dp[i],dp[j]+1); ans=max(ans,dp[i]); } } } cout<<ans; return 0; }

    userId_undefined

    爱吃儿童餐的哥莫拉{必回关}

    时间刺客空间掌握者时空双修者出道萌新分支·分支解题者循环·循环打卡人
    0阅读
    0回复
    0点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页