蓝桥省赛倒计时 35 天-线性 dp 练习

news2024/10/5 15:03:29

文章目录

  • 数学三角形
  • 最长上升子序列

数学三角形

在这里插入图片描述
思路:就是下一层通过上一层的条件转移过来,注意数可以是负数,所以边界得取-INF,这样求上层 max 的时候不会被初始化的数如 0 影响。

#include<bits/stdc++.h>
using namespace std;

int n;
int a[505][505];
const int INF = 0x3f3f3f3f;
int main( ){
    cin>>n;
    for(int i=1;i<=n;i++){
        for(int j=0;j<=i+1;j++){
            if(j==0||j==i+1)a[i][j]=-INF;
            else{
                cin>>a[i][j];
                a[i][j]+=max(a[i-1][j],a[i-1][j-1]);
            }
        }
    }
    int res=-INF;
    for(int i=1;i<=n;i++){
        res=max(res,a[n][i]);
    }
    cout<<res<<'\n';
    return 0;
}

最长上升子序列

在这里插入图片描述
思路:dp[i]表示以 a[i]结尾的数的上升子序列的最大长度,他的初始化是 dp[i]=1,递推公式是 if(a[j]<a[i])dp[i] = max(dp[i],dp[j]+1),可以打印看 dp 结果,最后是 max(result,dp[i]),dp[n-1]不一定是结果。注意遍历顺序,i 只能从小到大,j 前后顺序都可以。

#include<bits/stdc++.h>
using namespace std;
int n;
const int N = 1e3+10;
int a[N];
int dp[N];

int main( ){
    cin>>n;
    for(int i=0;i<n;i++)cin>>a[i];
    for(int i=0;i<n;i++)dp[i]=1;
    for(int i=1;i<n;i++){
        for(int j=0;j<=i;j++){
            if(a[j]<a[i])dp[i]=max(dp[j]+1,dp[i]);
        }
    }
    int result = 0;
    for(int i=0;i<n;i++)
        result = max(result,dp[i]);
    cout<<result<<'\n';
    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1502598.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Qt】不透明指针(Opaque Pointer)在Qt源码中的应用

目录 什么是不透明指针&#xff08;Opaque Pointer&#xff09;不透明指针在Qt代码中的应用Qt中与不透明指针相关的一些宏 什么是不透明指针&#xff08;Opaque Pointer&#xff09; GeeksforGeeks中给的定义如下&#xff1a; An opaque pointer is a pointer that points to …

每日一题 — 和为t的两个数

LCR 179. 查找总价格为目标值的两个商品 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 代码&#xff1a; public int[] twoSum(int[] price, int target) {int left 0;int right price.length - 1;while(left < right){//每一次都重新计算和int sum price[…

云上攻防-云原生篇K8s安全实战场景攻击Pod污点Taint横向移动容器逃逸

知识点 1、云原生-K8s安全-横向移动-污点Taint 2、云原生-K8s安全-Kubernetes实战场景 章节点&#xff1a; 云场景攻防&#xff1a;公有云&#xff0c;私有云&#xff0c;混合云&#xff0c;虚拟化集群&#xff0c;云桌面等 云厂商攻防&#xff1a;阿里云&#xff0c;腾讯云&…

jeecgboot 新建子模块 使用@EXCEL实现实现导入导出功能

一&#xff0c;用框架生成增删改查模块 二&#xff0c;在实体类entity 需要导入导出的字段上加上注解Excel 三&#xff0c;在controller类上继承jeecgboot通用controller JeecgController 并且在JeecgController里增加导出模板的方法 /*** 导出excel空模板** param req…

蓝牙系列七:开源蓝牙协议栈BTStack数据处理

继续蓝牙系列的研究。 在上篇博客,通过阅读BTStack的源码,大体了解了其框架,对于任何一个BTStack的应用程序都有一个main函数,这个main函数是统一的。这个main函数做了某些初始化之后,最终会调用到应用程序提供的btstack_main,在btstack_main里面首先做一些初始化,然后…

【Python】成功解决AttributeError: ‘MyClass‘ object has no attribute ‘my_attribute‘

【Python】成功解决AttributeError: ‘MyClass’ object has no attribute ‘my_attribute’ &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门…

力扣算法34. 在排序数组中查找元素的第一个和最后一个位置

Python&Java双语解决力扣必刷算法&#xff0c;题号34. 在排序数组中查找元素的第一个和最后一个位置 目录 题目描述 解题思路 完整代码 Java Python 题目描述 给你一个按照非递减顺序排列的整数数组 nums&#xff0c;和一个目标值 target。请你找出给定目标值在数组中…

windows下mysql8.3解压安装后临时密码报1045错误解决

过程&#xff1a; 1.登录MySQL官网www.mysql.com&#xff0c;进入产品下载页面。 2.选择MySQL Community&#xff08;GPL&#xff09;Downloads链接跳转下载页。 3.选择MySQL Community Server。 4.选择安装方式。通常有解压包安装和步骤安装两种方式&#xff0c;这里选择了解…

【硬件设计】(更新中)以 UCC27710 为例设计栅极驱动器元件选型(资料摘抄)

还没更新完。。。。。。。 【仅作自学记录&#xff0c;不出于任何商业目的。如有侵权&#xff0c;请联系删除&#xff0c;谢谢&#xff01;】 本文摘抄翻译自&#xff1a; Bootstrap Network Analysis: Focusing on the Integrated Bootstrap Functionality (infineon.com)Boo…

集群下锁失效的问题(JAVA)

一&#xff0c;出现问题的原因 因此每一个锁对象&#xff0c;都会指向一个锁监视器&#xff0c;而每一个锁监视器&#xff0c;同一时刻只能被一个线程持有&#xff0c;这样就实现了互斥效果。但前提是&#xff0c;多个线程使用的是同一把锁。 但问题来了&#xff0c;我们的服务…

Unity 让角色动起来(动画控制器)

下载素材&#xff1a; 导入后&#xff0c;找到预制体和动画。 新建动画控制器&#xff0c;拖动到预制体的新版动画组件上。 建立动画关系 创建脚本&#xff0c;挂载到预制体上。 using System.Collections; using System.Collections.Generic; using UnityEngine;public c…

github Commits must have verified signatures

1.首先确认是否有权限&#xff0c;如有权限的情况下那就是配置有问题了 我的情况是&#xff0c;能拉取代码&#xff0c;提交的时候出现这种情况&#xff1a;Commits must have verified signatures 这里是生成证书&#xff0c;如果已经生成过的&#xff0c;就不用生成了 ssh…

勒索软件事件手册:综合指南

近年来&#xff0c;勒索软件攻击的频率和复杂程度都急剧增加。这些攻击的影响可能是毁灭性的&#xff0c;从经济损失到严重的运营中断。 这就是为什么对于希望防范这种网络安全威胁的企业来说&#xff0c; 强大的勒索软件事件响应手册是不可谈判的。 本指南旨在深入了解勒索软…

Cloudflare Tunnel:无惧DDOS_随时随地安全访问局域网Web应用

利用此方法&#xff0c;您可以在局域网&#xff08;尤其是NAS&#xff09;上搭建的Web应用支持公网访问&#xff0c;成本低而且操作简单&#xff01; 如果这是博客的话&#xff0c;它还可以有效防止DDOS攻击&#xff01; 准备工作&#xff1a; 需要一个域名&#xff08;推荐N…

RabbitMQ 安装使用

文章目录 RabbitMQ 安装使用安装下载 Erlang下载 RabbitMQ 的服务安装好后看是否有 RabbitMQ 的服务开启管理 UIRabbitMQ 端口使用一览图 使用输出最简单的 Hello World&#xff01;生产者定义消费者消费消息小拓展 RabbitMQ 安装使用 安装 下载 Erlang RabbitMQ 是用这个语…

技术小知识:云计算服务下的IaaS,PaaS,SaaS⑥

一、云计算 云计算起源仿照天空的云朵聚集&#xff0c;意为对大量服务器的远程管理。以便能对服务器做空间、资源的最大动态协调利用和降低操作执行命令的复杂度。 二、云计算衍生下的服务 在服务器以一种云的形式存在&#xff0c;衍生除了很多服务提供&#xff0c;以便用户可以…

二分/树上第k短路,LeetCode2386. 找出数组的第 K 大和

一、题目 1、题目描述 给你一个整数数组 nums 和一个 正 整数 k 。你可以选择数组的任一 子序列 并且对其全部元素求和。 数组的 第 k 大和 定义为&#xff1a;可以获得的第 k 个 最大 子序列和&#xff08;子序列和允许出现重复&#xff09; 返回数组的 第 k 大和 。 子序列是…

Java高频面试之消息队列与分布式篇

有需要互关的小伙伴,关注一下,有关必回关,争取今年认证早日拿到博客专家 消息队列的基本作用&#xff1f; 异步通信&#xff1a;消息队列提供了异步通信的能力&#xff0c;发送方可以将消息发送到队列中&#xff0c;而无需等待接收方立即处理。发送方和接收方可以解耦&#x…

Svg Flow Editor 原生svg流程图编辑器(二)

说明 这项目也是我第一次写TS代码哈&#xff0c;现在还被绕在类型中头昏脑胀&#xff0c;更新可能会慢点&#xff0c;大家见谅~ 目前实现的功能&#xff1a;1. 元件的创建、移动、形变&#xff1b;2. command API&#xff1b;3. eventBus listener 事件监听&#xff1b;4. regi…

结构体和malloc学习笔记

结构体学习&#xff1a; 为什么会出现结构体&#xff1a; 为了表示一些复杂的数据&#xff0c;而普通的基本类型变量无法满足要求&#xff1b; 定义&#xff1a; 结构体是用户根据实际需要自己定义的符合数类型&#xff1b; 如何使用结构体&#xff1a; //定义结构体 struc…