![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
SinclairWang
A very self-motivated person, a very modest man,and also a man does not fear endures hardship.
展开
-
经典面试题-扔鸡蛋问题 Leetcode 887. 鸡蛋掉落
很经典的题目,力扣上的链接:887. 鸡蛋掉落题目大意是:有K个鸡蛋,N层楼,求你找出在最坏情况下最小的尝试次数找出鸡蛋碎的临界楼层。解析如果不限制鸡蛋次数,想找出最少的尝试次数,直接二分区间即可,比如一共8层,第一次看看4层碎不碎,4层不碎,去6层扔…,4层碎了,去2层扔看看碎不碎…何为最坏情况:鸡蛋破碎一定发生在搜索区间穷尽时,同时也要保证在该种情况下使得尝试次数最少。现在给了鸡蛋...原创 2020-04-14 00:09:58 · 1071 阅读 · 2 评论 -
区间DP初步
石子合并问题282. 石子合并dp[l][r]=dp[l][k]+dp[k+1][r]+s[r]−s[l−1]dp[l][r] = dp[l][k]+dp[k+1][r]+s[r]-s[l-1]dp[l][r]=dp[l][k]+dp[k+1][r]+s[r]−s[l−1]#include<iostream>#include<algorithm>#include&...原创 2020-03-25 16:47:06 · 154 阅读 · 0 评论 -
DP学习之完全背包
完全背包常见题目一有 NNN 种物品和一个容量是 V 的背包,每种物品都有无限件可用。第 iii 种物品的体积是viv_ivi,价值是 wiw_iwi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。数据范围0<N,V≤10000<N,V≤10000<N,V≤10000<vi,wi≤10000<v_i,w_i≤10000<...原创 2020-03-25 16:09:01 · 145 阅读 · 0 评论 -
DP学习之0/1背包再学习
背包常见题目一有 NNN件物品和一个容量是 VVV 的背包。每件物品只能使用一次。第 iii件物品的体积是 viv_ivi,价值是 wiw_iwi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。数据范围0<N,V≤10000<N,V≤10000<N,V≤10000<vi,wi≤10000<v_i,w_i≤10...原创 2020-03-25 15:42:14 · 141 阅读 · 0 评论 -
数位DP入门学习
一篇很好的博客,按照这篇博客进行入门数位dp总结 之 从入门到模板,把写的例题记录一下。不要62#include<bits/stdc++.h>using namespace std;int m,n;int a[20];int dp[20][2];int dfs(int pos,int pre,int state,bool limit){ if(pos==-1) retu...原创 2020-03-01 17:29:51 · 210 阅读 · 0 评论 -
最长公共子序列(LongestCommonSubsequence)
问题描述求两个长度分别为m和n的字符串A、B的最长公共子序列。A:a0a1a2…am-1B:b0b1b2…bn-1思路构造一个大小为(m+1)*(n+1)的二维数组dpdp[i][j] 表示a0a1a2…ai-1 和 b0b1b2…bj-1 两个字符串的最大公共子序列状态转移方程dp[i][j]={0if i=0 or j=0dp[i−1][j−1]+...原创 2019-10-17 21:39:29 · 179 阅读 · 0 评论