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

钟祥网站建设凡客诚品网站特点

钟祥网站建设,凡客诚品网站特点,公众号登陆入口,wordpress升级后怎么设置字体颜色审题: 本题需要我们找到最长的上升子序列,然后输出最长的序列长度 思路: 方法一:动态规划 (1)状态表示:f[i]表示以第i个元素为结尾的上升子序列的最大长度 (2)状态转移方…

审题:

本题需要我们找到最长的上升子序列,然后输出最长的序列长度

思路:
方法一:动态规划

(1)状态表示:f[i]表示以第i个元素为结尾的上升子序列的最大长度

(2)状态转移方程:

上升子序列有两大状态,其一是只有i位置元素本身,序列长度就为1

其二是不仅包含i位置本身,且还有前面若干个元素

那么对于第二种情况,a[i]前面可以与其组成升序子序列的有效元素a[j],一定满足a[j]<a[i]

(1 <= j <= i-1)

我们遍历所有满足该条件的元素的f[j],然后维护出最大的f[j],那么此时最长序列长度就是maxf[j] + 1

(3)初始化:

由于我们在进行访问的时候不会出现越界访问的情况,所以不存在数组原始数据干扰,全部初始化为0即可

(4)填表顺序:从左到右

由于f[i]是依赖于f[j]求的,且j位于i左侧,所以我们需要先填写左侧的f

(5)答案输出:

题目要的是所有升序序列中的最大长度,所以我们遍历整个f数组,然后将f数组的最大值输出即可

解题:
 

#include<iostream>
using namespace std;
const int N = 5010;
int a[N], f[N];
int n;
int main()
{//数据录入cin >> n;for (int i = 1; i <= n; i++){cin >> a[i];}//填表for (int i = 1; i <= n; i++){int max_size = 1;for (int j = 1; j <= i - 1; j++){if(a[j] < a[i]) max_size = max(max_size, f[j] + 1);}f[i] = max_size;}//答案输出int ret = 0;for (int i = 1; i <= n; i++){ret = max(ret, f[i]);}cout << ret << endl;return 0;
}

注意:

1.初始化max_size为1,是因为无论哪种情况,长度一定大于等于1

B3637 最长上升子序列 - 洛谷

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

相关文章:

  • 新手做淘宝客网站教程网站建设培训学校
  • 网站建设网络推广公司北京高端网站建设制作设计
  • 关于建立公司网站的申请免费咨询皮肤科医生回答在线
  • 如何软件网站优化公司玉环 企业网站建设
  • 广州营销型网站制作上海平台网站建设
  • 临沂网站建设服务商网站建设5000费用
  • 个人网站备案流程wordpress新建文章模型
  • 如何在谷歌上做网站建筑公司企业愿景及理念模板
  • 营销型企业网站的功能有哪些综合购物网站排名
  • 外贸购物网站开发百度关键字
  • 网站整体风格网站专题页优化
  • 用户注册网站开发建站saas
  • 内蒙古建设协会网站网站建设企业关键词
  • 太原做手机网站电商运营方案计划书
  • BUUCTF [OGeek2019]babyrop wp
  • 有没有做网页的网站网店代运营什么意思
  • 用vs做网站原型做网站要运用到代码吗
  • html网站成品下载台州品牌网站建设
  • wordpress 审核免费优化网站建设
  • 陕西省城乡住房建设厅网站男女做的那个视频网站
  • 网站建设合同模式保险查询平台
  • 容器技术基础概念学习记录
  • wordpress多站点 用户同步徐州人才网
  • 茂名网站建设公司成全视频免费观看在线看第6季动漫影视大全
  • 外国人做的古文字网站那个网站可以做软件出售的
  • 做门户网站服务器选择济南高新网站制作
  • 贵阳网站建设需要多少钱做印刷网站公司哪家好
  • 培训销售网站建设设计的比较好的网站
  • 网站关键词库如何做北京手机网站建设外包
  • 做外汇看的网站免费建立网站步骤