![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线性DP
_Ark
这个作者很懒,什么都没留下…
展开
-
最长公共上升子序列 O(n^2)
#include <bits/stdc++.h>using namespace std;const int MAXN = 5005;int A[MAXN], B[MAXN], N, M, dp[MAXN];int main(){ scanf("%d", &N); for(int i = 1; i <= N; i++) scanf("%d", &...原创 2018-11-04 20:09:53 · 171 阅读 · 0 评论 -
BZOJ 4032: [HEOI2015]最短不公共子串 (dp*3 + SAM)
转博客大法好第4个子任务中,为什么只转移最近的一个位置,自己YY吧(多YY有益身体健康).#include <bits/stdc++.h>using namespace std;typedef long long LL;template<class T>inline void read(T &num) { register char ch; reg...原创 2019-04-01 12:33:19 · 180 阅读 · 0 评论 -
BZOJ 2213: [Poi2011]Difference (DP)
题意求一段区间内最大字母出现次数-最小字母出现次数的最大值。题解考虑f[i][j]f[i][j]f[i][j]代表当前字符iii减去字符jjj的个数…那么答案为maxf[r][i][j]−f[l−1][i][j]\max f[r][i][j]−f[l−1][i][j]maxf[r][i][j]−f[l−1][i][j]当右端点从xxx变为x+1x+1x+1的时候最多改变525252个值...原创 2019-09-14 13:30:04 · 201 阅读 · 0 评论