| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> DP之引和常用技巧 -> 正文阅读 |
|
[数据结构与算法]DP之引和常用技巧 |
引和常用技巧概论首先,我们先建立DP和递推之间的联系 也就是我们完全不管前面问题的解决手段,就是疯狂划归子问题 举个栗子昂 4=2+2,2问题解决了呀!( F[ 2 ]已知 )好耶!直接抽调,完结撒花!! 我们可以知道,无后效性和最优子结构是动规的精髓,那么判断这两项的能力说白了就是动规之光!! 动规5步大法: 1,划分阶段2,确立状态3,讲求策略(找到状态转移方程)4,特指边界5,复用最优子结构(有点像记忆化)你可以试着使用表格分析所有的DP,这篇博客可能是初学者之光 强调:这一系列博客我们直接省略朴素转移代码,只写优化的,但是文字说明和基本的状态转移方程还在 数字三角形模型(偏进阶)
1,曼哈顿距离大意:
曼哈顿距离:两个点在标准坐标系上的绝对轴距总和, d m = ∣ x 1 ? x 2 ∣ + ∣ y 1 ? y 2 ∣ dm=|x1?x2|+|y1?y2| dm=∣x1?x2∣+∣y1?y2∣ 起点终点曼哈顿距离:
2
n
?
2
2n-2
2n?2(也可以看作步数) 所以其他的直接普通数字三角形建模 2,双路径(同时数字三角形)题目来源: 题意:
考虑直接和数字三角形建立联系 为什可以同时走:因为到终点方向是固定的,意味着两次走步数肯定一致(为终起点曼哈顿距) 步数一致设成 K K K, 枚举 x 1 , x 2 x1,x2 x1,x2 即为两者都走 k k k 步时的位置 每个点都能两个方向下来,所以合起来就是4步转移 别忘了判边界!!!(在已知步数的情况下减法,很可能越界!) 3,方格取数究极版
简单的思路我们不讨论,这里我们直接考虑一下边界 这个过程其实就是对数字三角形转移的深度理解 由于上下转移的特殊性,我们固定了列号,这产生了新的讨论
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 6:52:50- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |