1143. 最长公共子序列 LeetCode_1143 题目描述 题解分析 求最长公共子序列主要需要考虑两种情况。 第一种是当前位置的两个字符相同,那么当前最长公共子串就是dp[i-1][j-1]+1。 第二种是当前位置的两个字符不同,那么当前最长公共子串长度就是两个串各退一个字符后的最大长度。 代 ...
分类:
其他好文 时间:
2021-03-16 11:55:59
阅读次数:
0
线段树合并简单题,贪心神题! 题意简述:给定一棵树,每个点有权值$w_i$,要求你选择一个最大的点集(不要求联通),使得若$u是v的祖先$,则$w_u \leq w_v$. \(n \leq 1e5,w_i \leq 1e9\) 考虑设$dp_{u,i}$为以$u$为根的子树内,最大值为i能选的最大 ...
分类:
其他好文 时间:
2021-03-15 10:49:26
阅读次数:
0
访问官网:http://www.ee.ic.ac.uk/hp/staff/dmb/perl/index.html 写在前面 首先需要确定电脑上已经装好texlive, 包含了 bibtex.exe,如: 然后,装好了word, 下载bibtex4word http://www.ee.ic.ac.uk ...
问题 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径 示例 输入:m = 3, n = 7 输出:28 解法 定义状态:dp[ ...
分类:
其他好文 时间:
2021-03-11 16:26:22
阅读次数:
0
动态规划基础 在写这篇博客之前,我被动态规划之类的问题折磨地"遍体鳞伤" 。直到我了解到了闫氏DP分析法。之后,我吃饭更香了,身体更棒了!!! ...... 咳嗯额...开个玩笑,言归正传。 闫氏DP分析法是从集合地角度来分析求解DP问题的。它的具体思想是:找某个依据将某个状态用它的子状态来不重不漏 ...
分类:
其他好文 时间:
2021-03-09 13:34:30
阅读次数:
0
想清楚它不是DP而是贪心就好做了 首先, 我们称子树刚好包含所有某一颜色的点为临界点, 那我们要优先选择深度越深的临界点越好 用另一种方式来说, 在dfs的过程中, 第一次发现有一个点恰好为临界点,那么就选择这个点为分界线新增一个答案, 很容易想清楚, 选择越深的肯定更优, 让其它点的有更多分块的机 ...
分类:
其他好文 时间:
2021-03-09 13:33:11
阅读次数:
0
图论最短路:Floyd 多源最短路的处理方法,主要思想为dp; 时间复杂度O(n^3); a[i][j]:邻接矩阵储存图; dp[i][j]:从i点到j点的最短距离; 转移方程: 选取k点,dp[i][j]=min(dp[i][k]+dp[k][j],dp[i][j]); 直接贴核心代码: 1 fo ...
分类:
其他好文 时间:
2021-03-08 14:05:48
阅读次数:
0
[Aimee](P1855 榨取kkksc03) 很简单的dp #include<iostream> #include<cstring> using namespace std; int n,m,t; int mi[1000]; int ti[1000]; int dp[201][301][201] ...
分类:
其他好文 时间:
2021-03-08 13:47:33
阅读次数:
0
CF739E Gosha is hunting 奥妙重重的WQS二分 限制了每种球使用次数,然后考虑利用WQS二分,二分一个使用代价,然后进行dp,此时就没有数量的限制了。 所以这里我们需要二分里面套二分 然后有一个小细节就是必须保证每次内层二分等于的时候必须向下取,虽然向上取对b类没有影响,但是会 ...
分类:
其他好文 时间:
2021-03-08 13:45:12
阅读次数:
0
#include <bits/stdc++.h> using namespace std; int ans,a[1000],dp[1000],n; int main(){ scanf("%d",&n); for(int i=1;i<=n;i++){ scanf("%d",&a[i]); } for( ...
分类:
其他好文 时间:
2021-03-08 13:08:20
阅读次数:
0