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

蓝桥杯备赛:动态规划入门

写题的时候我发现:除了输入输出、循环、条件等基本语句一类的题目之外,我就什么都不会了,题目根本写不下去。

需要学:动态规划、哈希表、二分法、贪心算法等基本算法

现在什么都不会,对这些东西也是一点都不会懂,还有点怕,

“我想都不知道怎么想的东西,怎么用代码敲出来?”

但是呀,我想跟自己说:你学一个东西之前,是肯定不会的呀,不然为什么要学呢?

学会了其实也就那样。SO,学就好了~

对动态规划的初步理解:

登台阶问题:

共n个台阶,每次最多跨k步,有几种方式登完?

标红原因:列表空间开小了刚开始我写的是

dp = [0] * 100

那么什么是动态规划呢?目前我觉得是找到最终目的地的次目的地,再通过次目的地找到次次目的地,一次次递归,计算次数.

就像计算dp[5]的时候,我们用的是dp[3] + dp[4]

而计算dp[4]的时候,我们用的是dp[2] + dp[3]

然后这样一步步往前推。

——在找最后的解的时候,往前一步找到这个解前面的一步

#动态列表入门1 跨阶梯问题dp = [0] * 1000000            #开列表'''dp 是一个变量名,通常用来表示动态规划的状态数组。
[0] 表示一个包含单个元素 0 的列表。
* 1000000 表示将这个列表重复扩展到长度为 1000000,
即创建一个包含 1000000 个元素的列表,每个元素的值都是 0。
这行代码的作用是创建一个长度为 1000000 的列表,所有元素的初始值均为 0'''n,k = map(int,input().split()) #一行输入两个变量,用空格隔开
dp[0] = 1for i in range(1, n + 1):      #求走到最后的阶梯上共有几种for j in range(1, k + 1):  #求走到它次级阶梯怎么走if i - j >= 0:dp[i] = (dp[i] + dp[i - j]) % 10003print(dp[n])

好吧,这段代码,就算我知道了它的原理,好像还是不能这样用循环写出来,每次问题稍稍复杂一点我就蒙了,刚刚又看了一遍,好像有些头绪了

十进制数翻转问题

动态规划进一步理解:长的依赖短的,复杂的问题,分解成简单的子问题。

我觉得我可以!!!我一定可以!!!

别人的代码:

s = input()  # 原始字符串
ans = 0      # 最终合规翻转字符串次数的累加
n = len(s)
dp = [[0] * n for _ in range(n)]  # 初始化动态规划数组# 遍历所有可能的子序列长度 r
for r in range(2, n + 1):  # length of subsequencefor i in range(0, n - r + 1):  # 遍历所有可能的起始位置 ij = i + r - 1  # 计算对应的结束位置 jif r == 2:  # 当子序列长度为 2 时if s[i] > s[j]:dp[i][j] = 1  # 如果 s[i] > s[j],则 dp[i][j] = 1else:dp[i][j] = 0  # 否则 dp[i][j] = 0elif r > 2:  # 当子序列长度大于 2 时if s[i] > s[j]:dp[i][j] = dp[i + 1][j] + dp[i][j - 1] - dp[i + 1][j - 1]  # 需要减去重复计算的部分else:dp[i][j] = dp[i + 1][j - 1]  # 如果 s[i] <= s[j],则继承内部子序列的结果ans += dp[i][j]  # 累加所有满足条件的子序列print(ans

我不会啊,她视频的第二个代码题我听得时候都不专注

相关文章:

蓝桥杯备赛:动态规划入门

写题的时候我发现&#xff1a;除了输入输出、循环、条件等基本语句一类的题目之外&#xff0c;我就什么都不会了&#xff0c;题目根本写不下去。 需要学&#xff1a;动态规划、哈希表、二分法、贪心算法等基本算法 现在什么都不会&#xff0c;对这些东西也是一点都不会懂&…...

【VSCode SSH 连接远程服务器】:身份验证时,出现 key: invalid format 的问题

从其它电脑上把私钥文件复制后&#xff0c;出现格式错误 很有可能是复制的时候引入了乱码 很有可能是复制的时候引入了乱码 因此直接从其它电脑上把私钥文件复制到新设备上即可&#xff01;&#xff08;不直接复制私钥的内容&#xff09; 亲测有效。...

git和VScode

游戏存档保存的是游戏的进度 git保存的是代码的进度 Vscode和git 要正常的使用git首先要设置姓名和邮箱 要配合gitee&#xff08;也可以是其他平台&#xff0c;以gitee举例&#xff09;使用&#xff0c;首先创造一个gitee账号&#xff0c;复制邮箱和用户名 在VScode中找到…...

c语言数据结构——八大排序算法实现

文章目录 八大排序算法排序算法种类选择排序类堆排序算法思路时间复杂度和空间复杂度 选择排序算法思路算法优化时间复杂度和空间复杂度 插入排序类插入排序算法思路时间复杂度和空间复杂度 希尔排序算法思路时间复杂度和空间复杂度 非比较排序类计数排序时间复杂度和空间复杂度…...

Python入门(5):异常

目录 1 异常处理基础概念 1.1 什么是异常&#xff1f; 1.2 异常与错误的区别 2 异常处理基础 2.1 常见内置异常类型 2.2 try-except 基本结构 2.3 捕获多个异常 2.4 抛出异常 2.4.1 使用raise语句 2.4.2 自定义异常类 3 高级异常处理技巧 3.1 不要过度捕…...

OpenCv(五)——边缘检测

目录 边缘检测 一、sobel算子边缘检测 &#xff08;1&#xff09;原理 1、X轴方向的边缘检测 2、Y轴方向的边缘检测 &#xff08;2&#xff09;sobel算子参数 &#xff08;3&#xff09;X轴方向边缘检测代码演示 1、显示圆的图像 2、x方向上的边缘检测&#xf…...

论文笔记:Instruction-Tuning Llama-3-8B Excels in City-Scale MobilityPrediction

2024 Sigspatial Hummob Workshop 第2/3名 提出了 Llama-3-8B-Mob——一个基于 Llama-3-8B的指令微调版本&#xff0c;专为长期、多城市人类移动预测而设计。 1 问题定义 2 方法 将轨迹预测问题重构为一个带有指令的问答任务 通过 GPT-3.5 和 4 进行实验&#xff0c;发现虽然…...

基础框架系列分享:一个通用的Excel报表生成管理框架

由于我们系统经常要生成大量的Excel报表&#xff08;Word&#xff0c;PDF报表也有&#xff0c;另行分享&#xff09;&#xff0c;最初始他们的方案是&#xff0c;设计一个表&#xff0c;和Excel完全对应&#xff0c;然后读表&#xff0c;把数据填进去&#xff0c;这显然是非常不…...

Linux安装Ubuntu24.04系统 并安装配置Nvidia 4090 显卡驱动

目录标题 方式一、离线安装一、检查确认系统的版本首先在终端输入下载注意:注意, 后面带notebook的是笔记本的驱动,不要下载错了点击view点击下载二、安装我选择的是 NVIDIA Proprietary.安装完成之后,再次检查补充步骤三:禁用默认nouveau显卡驱动,后重启系统补充步骤四:…...

Deepdiff的使用实战记录

使用场景&#xff1a;在做数据库迁移 或 底层代码重构优化&#xff0c;用于对比新旧代码的接口层返回数据对比 1.模拟在新改造的接口上新加了字段is_ok&#xff0c;且时间戳字段精度变成毫秒&#xff0c;img字段域名变更&#xff0c;能准确对比。 api_old {"ret":…...

C语言:多线程

多线程概述 定义 多线程是指在一个程序中可以同时运行多个不同的执行路径&#xff08;线程&#xff09;&#xff0c;这些线程可以并发或并行执行。并发是指多个线程在宏观上同时执行&#xff0c;但在微观上可能是交替执行的&#xff1b;并行则是指多个线程真正地同时执行&…...

Linux(25)——进程调度

目录 一、Linux 进程调度&#xff1a; 二、进程优先级&#xff1a; 1、普通调度策略&#xff1a; 2、完全公平调度程序&#xff1a; 三、nice 值&#xff1a; 1、nice 值范围&#xff1a; 2、nice 值修改权限&#xff1a; &#xff08;1&#xff09;降低&#xff1a; …...

SAP CO88根据标准价格拆分增量错误解决

CO88事务码可能出现如下错误&#xff0c;错误消息号 MLCCS015。出现该错误&#xff0c;表示成本组件分解出现了问题&#xff0c;参照 MLCCS015 错误的帮助文档&#xff1a; 其实这里已经说明了原因和解决方法&#xff0c;但不是很具体。note 632752 - Use of the program MLCCS…...

spring boot 整合redis

1.在pom文件中添加spring-boot-starter-data-redis依赖启动器 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 2.编写三个实体类 RedisHash("p…...

游戏被外挂攻破?金融数据遭篡改?AI反作弊系统实战方案(代码+详细步骤)

一、背景与需求分析 随着游戏行业与金融领域的数字化进程加速,作弊行为(如游戏外挂、金融数据篡改)日益复杂化。传统基于规则的防御手段已难以应对新型攻击,而AI技术通过动态行为分析、异常检测等能力,为安全领域提供了革命性解决方案。本文以游戏反作弊系统和金融数据安…...

【JavaWeb】前端基础

JavaWeb 前端三大件&#xff1a;HTML&#xff08;主要用于网页主体结构的搭建&#xff09;&#xff0c;CSS&#xff08;页面美化&#xff09;&#xff0c;JavaScript&#xff08;主要用于页面元素的动态代理&#xff09; 1. HTML 1.1 html概述 HTML&#xff1a;Hyper Text …...

STM32智能手表——任务线程部分

RTOS和LVGL我没学过&#xff0c;但是应该能硬啃这个项目例程 ├─Application/User/Tasks # 用于存放任务线程的函数 │ ├─user_TaskInit.c # 初始化任务 │ ├─user_HardwareInitTask.c # 硬件初始化任务 │ ├─user_RunModeTasks.c…...

Java线程池详解

摘要&#xff1a;线程池是Java高并发编程的核心组件&#xff0c;有效管理线程生命周期并提升系统性能。本文将深入剖析Java线程池的实现原理、配置策略及生产环境中的实战技巧&#xff0c;助您构建高效稳定的多线程应用。 一、线程池核心价值 1.1 为什么需要线程池&#xff1f…...

Git Fetch 和 Git Pull 的区别

Git fetch和git pull的区别 二者都能够从远程获取最新版本到本地。 1. Git fetch 仅从远程获取最新版本到本地&#xff0c;不会进行 merge&#xff08;合并&#xff09;操作。 操作示例 从远程的 origin的 master 主分支上获取最新版本到 origin/master 分支上&#xff1a…...

《2核2G阿里云神操作!Ubuntu+Ollama低成本部署Deepseek模型实战》

简介&#xff1a; “本文为AI开发者揭秘如何在阿里云2核2G轻量级ECS服务器上&#xff0c;通过Ubuntu系统与Ollama框架实现Deepseek模型的高效部署。无需昂贵硬件&#xff0c;手把手教程涵盖环境配置、资源优化及避坑指南&#xff0c;助力初学者用极低成本在云端跑通行业领先的大…...

Rust闭包详解

文章目录 闭包捕获外部变量移动和借用闭包的特性闭包和性能闭包和生命周期 闭包 Rust中的闭包是一种匿名函数&#xff0c;可以捕获并存储环境中的变量&#xff0c;有点类似于Lambda表达式 闭包允许在其定义的作用域之外访问变量&#xff0c;并且可以在需要时将其移动或者借用…...

科技潮流出行新体验 方程豹全新车型钛3正式开启预售

科技潮流出行新体验&#xff0c;比亚迪个性化品牌方程豹旗下全新车型钛3正式开启预售&#xff0c;钛3定位科技潮品SUV&#xff0c;搭载独有的潮流配置“1机3舱”&#xff0c;以及“iCT”安全三件套、“E2C”智能三件套&#xff0c;实现了科技越级、空间越级、配置越级&#xff…...

如何将AI模型返回的字符串转为html元素?

场景&#xff1a; 接入deepseek模型的api到我们平台&#xff0c;返回的字符串需要做下格式化处理。 返回的数据是这样的&#xff1a; {"role": "assistant","content": "<think>\n嗯&#xff0c;用户问的是“星体是什么”。首先&am…...

使用SpringBoot + Thymeleaf + iText实现动态PDF导出

使用SpringBoot Thymeleaf iText实现动态PDF导出 1.前端模版代码&#xff0c;需要注意&#xff0c;iText有很多高级样式兼用性不好&#xff0c;需要自己试错&#xff1a; <!DOCTYPE html> <html lang"en" xmlns:th"http://www.thymeleaf.org"…...

Redis 源码硬核解析系列专题 - 扩展篇:Gossip协议的具体实现

1. 引言 Redis Cluster使用Gossip协议实现节点间的状态同步和一致性维护。Gossip协议是一种去中心化的通信机制,通过节点间的“谣言传播”方式交换信息,具有高容错性和扩展性。本篇将深入剖析Redis中Gossip协议的具体实现,包括消息格式、传播机制和故障检测逻辑。 2. Gossi…...

scGPT环境安装

scGPT环境安装 conda create -n scgpt_2 conda activate scgpt_2 conda install python3.10.11 cudatoolkit11.7 cudatoolkit-dev gxx>6.0.0,<12.0 cudnn -c conda-forge pip install torch1.13.0cu117 torchvision0.14.0cu117 torchaudio0.13.0 --extra-index-url https…...

linux服务器组建与管理

环境: DNSSamba服务器 ip:192.168.177.153 FTP服务器 ip:192.168.177.152 pc ip:192.168.177.151 这里先把DNS的ip及DNS固定给固定了,免得我关机了还会更改 网络配置:(前面的命令是DNS/Samba的后面的是FTP的,下面那张是示例图) sudo nmcli con mod ens33 ipv4.addres…...

vue3 生命周期函数(挂载、更新、销毁)

在这之前&#xff0c;相必用户也是用过vue2的经历&#xff0c;所以&#xff0c;在讲解之前先对vue2和vue3的生命周期进行对比&#xff1a; Option API组合APIbeforeCreate-setupcreated-setupbeforeMountonBeforeMountmountedonMountedbeforeUpdateonBeforeUpdateupdatedonUpd…...

树莓派超全系列教程文档--(20)树莓派配置自动息屏

树莓派配置自动息屏 配置自动息屏桌面Raspberry Pi 配置CLI 控制台设置控制台模式自动息屏查看当前自动息屏设置 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 配置自动息屏 您可以将 Raspberry Pi 配置为在一段时间不活动后自动息屏。默认情况…...

基于 Qt / HTTP/JSON 的智能天气预报系统测试报告

目录 一、项目概述 1.1项目背景 1.2项目目标 二、功能需求 2.1 用户界面功能 2.2 后台功能 三、技术选择 3.1 开发框架与工具 3.2 第三方 API 四、UI设计 4.1界面展示 4.2stylesheet样式 五、代码实现 1.构造函数 2.网络请求响应处理函数 3.处理json数据 4.更新…...

Oracle数据库数据编程SQL<3.7 PL/SQL 触发器(Trigger)>

触发器是Oracle数据库中的一种特殊存储过程&#xff0c;它会在特定数据库事件发生时自动执行。触发器通常用于实现复杂的业务规则、数据验证、审计跟踪等功能。 目录 一、触发器基本概念 1. 触发器特点 2. 触发器组成要素 二、触发器类型 1. DML触发器 2. DDL触发器 3.…...

反常积分和定积分的应用 1

网课 还是得跟上网课的进度。但是不要给自己太大的压力。看到数学题确实有点慌张。老师为什么说写对了不要打对号&#xff0c;我感觉打对号可以给自己充足的正反馈。关键问题就是能做对的题不多。这篇笔记主要整理网课的一些笔记。网课落下的比较多&#xff0c;大概还需要补好…...

Day49 | 11. 盛最多水的容器、16. 最接近的三数之和、33. 搜索旋转排序数组、36. 有效的数独

11. 盛最多水的容器 题目链接&#xff1a;11. 盛最多水的容器 - 力扣&#xff08;LeetCode&#xff09; 题目难度&#xff1a;中等 代码&#xff1a; class Solution {public int maxArea(int[] height) {int i0,jheight.length-1,res0;while(i<j){resheight[i]<heig…...

31天Python入门——第20天:魔法方法详解

你好&#xff0c;我是安然无虞。 文章目录 魔法方法1. __new__和__del__2. __repr__和__len__3. __enter__和__exit__4. 可迭代对象和迭代器5. 中括号[]数据操作6. __getattr__、__setattr__ 和 __delattr__7. 可调用的8. 运算符 魔法方法 魔法方法: Python中的魔法方法是一类…...

WPF 浅述IsHitTestVisible属性

WPF 浅述IsHitTestVisible属性 IsHitTestVisible 属性是 WPF 中一个非常重要的属性&#xff0c;它决定了一个控件是否可以作为 hit test 的一部分被检测到。理解这个属性对于处理交互事件&#xff08;如鼠标点击、触摸等&#xff09;非常重要。 IsHitTestVisible 属性的含义&am…...

WSN 经典定位算法

WSN 经典定位算法 包括&#xff1a; Centoid, Bounding_box, Grid_Scan, RSSI, DV_hop, MDS_MAP&#xff0c;APIT-WSN Localization/Amorphous/Amorphous.m , 3351 Localization/APIT/APIT.m , 4169 Localization/APIT/PPIT.m , 3889 Localization/Bounding Box/Bounding_Box.…...

LLM 优化技术(1)——Scaled-Dot-Product-Attention(SDPA)

在 Transformer 中抛弃了传统的 CNN 和 RNN&#xff0c;整个网络结构完全由Scaled Dot Product Attention 和Feed Forward Neural Network组成。一个基于 Transformer 的可训练的神经网络可以通过堆叠 Transformer 的形式进行搭建&#xff0c;Attention is All You Need论文中通…...

【深度学习】嘿马深度学习目标检测教程第1篇:商品目标检测要求、目标,1.1 项目演示【附代码文档】

教程总体简介&#xff1a;要求 目标 1.1 项目演示 学习目标 1.1 图像识别背景 1.2 什么是目标检测 1.2.1 目标检测定义 1.2.1.1 物体 1.3 目标检测应用场景 1.3.1 行业 1.3.2 应用类别 1.4 开发环境搭建 目标检测概述 3.1 目标检测任务描述 3.1.4 目标定位的简单实现 项目实现 …...

【蓝桥杯】单片机设计与开发,RTC实时时钟

一、RTC-DS1302概述 二、BCD码 三、三线协议概述 四、RTC的应用 五、DS1302的驱动函数 六、操作流程 七、三线协议驱动程序...

Java 各版本的新特性

Java 各版本的新特性主要集中在提升开发效率、性能优化、语言功能增强和模块化支持等方面。以下是 JDK 8 到 JDK 21&#xff08;截至2023年&#xff09;的主要新特性概览&#xff1a; JDK 8 (2014) - LTS Lambda 表达式&#xff1a;支持函数式编程&#xff0c;简化匿名内部类。…...

OpenGL中EBO的使用及原理

EBO 是什么&#xff1f; 在OpenGL中&#xff0c;EBO&#xff08;Element Buffer Object&#xff09;&#xff0c;也称为索引缓冲对象 IBO&#xff08;Index Buffer Object&#xff09;&#xff0c;是一种用于存储顶点索引数据的缓冲区对象。它的核心作用是通过复用顶点数据来减…...

应用分享 | AWG技术突破:操控钻石氮空位色心,开启量子计算新篇章!

利用AWG操作钻石中的氮空位色彩中心 金刚石中的颜色中心是晶格中的缺陷&#xff0c;其中碳原子被不同种类的原子取代&#xff0c;而相邻的晶格位点则是空的。由于色心具有明亮的单光子发射和光学可触及的自旋&#xff0c;因此有望成为未来量子信息处理和量子网络的固态量子发射…...

【Ultralytics YOLO COCO 评估脚本 | 获得COCO评价指标】

文章目录 Ultralytics YOLO COCO 评估脚本 (coco_evaluate.py)1. 描述2. 依赖项3. 使用方法4. 输入文件格式5. 输出6. 注意7. 完整代码 Ultralytics YOLO COCO 评估脚本 (coco_evaluate.py) 这是一个 Python 脚本&#xff0c;用于评估以 COCO JSON 格式提供的目标检测结果。它…...

聊一聊,元件封装知多少?

目录 01 | 简 介 02 | 常见的无源器件封装 03 | 集成(IC)类封装 04 | 功率器件类封装 05 | 连接器类封装 06 | 总 结 01 | 简 介 由于平时工作中&#xff0c;经常需要查看封装的样式&#xff0c;以便初步规划PCB布局&#xff1b;遂萌发对常用的元件封装进行一次总结。 …...

企业需要使用防病毒系统保障数据安全的原因

数据作为企业的重要资产&#xff0c;正面临勒索病毒等极大威胁。在复杂严峻的网络安全形势下&#xff0c;企业的业务运营、数据安全和声誉遭遇诸多来自网络的挑战。2023年&#xff0c;国内发生多起严重网络安全事件&#xff0c;例如数据库漏洞导致数据泄露、钓鱼邮件窃取信息、…...

使用无人机进行露天矿运输道路分析

使用无人机进行露天矿运输道路分析 无人机正在彻底改变采矿业&#xff0c;为露天矿场的运输道路收集数据和分析提供了一种新方法。通过使用 UAS 技术&#xff0c;采矿公司可以更全面地了解道路状况&#xff0c;确定磨损区域&#xff0c;并提高安全性和效率。 本文介绍了无人机用…...

基于Vue.js网页开发相关知识:Vue-router

一、基础知识 vue-router 是 Vue.js 官方的路由管理器&#xff0c;用于实现单页面应用&#xff08;SPA&#xff09;的路由功能。以下从几个方面对 vue-router 进行详细分析&#xff1a; 1. 核心概念 路由配置 vue-router 通过定义路由配置对象来管理应用的路由。每个路由配置…...

同时使用Telnet和SSH登录思科交换机

同时使用Telnet和SSH登录思科交换机 1. 配置管理IP地址 首先&#xff0c;为交换机配置一个管理IP地址&#xff0c;以便可以通过网络进行远程管理&#xff1a; Switch(config)# interface vlan [VLAN_ID] Switch(config-if)# ip address [IP地址] [子网掩码] Switch(config-i…...

presto行转列

presto的行列转换和spark、hive一样也是通过外链语句实现的&#xff0c;只不过语法和关键子有点不同&#xff0c;如下 with tmp1 as (select 1,2,3 as a1,4,5,6 as a2 ) select * from tmp1 cross join unnest(split(tmp1.a1, ,),split(tmp1.a2, ,) ) as b(a1s,a2s) 结果如下...

App Usage v5.57 Pro版 追踪手机及应用使用情况

手机使用监控神器&#xff1a;让你的手机使用情况一目了然 现代人的生活已经离不开手机——通讯、娱乐、支付、购物…每天我们花在手机上的时间越来越多。你是否好奇&#xff1a; 每天在各个应用上花费了多少时间&#xff1f;一天中查看了多少次手机&#xff1f;哪些应用在后…...