摘要:
题解 阅读全文
摘要:
阅读全文
摘要:
/* 序列DP 对于每一行 f[i][j]=max(f[k][j-1]+max(蓝 红,[k,i]) 对于每一行 dp[i][j],i表示行号, dp[i][j]=max(dp[i][j-k]+f[m][k]); 答案 dp[n][T]; */ #include <cmath> #include < 阅读全文
摘要:
/* 区间DP,其中一种类型, 转移分阶段性,且阶段性分两组 i组,j组 */ #include <cmath> #include <queue> #include <cstdio> #include <vector> #include <cstring> #include <iostream> # 阅读全文
摘要:
目录DAGDP区间DP序列DP树形DP换根DP背包DP期望DP装压DP单调队列优化 DAGDP 食物链 简单的拓扑DP,转移方程通式 \(f[v]+=f[u],rd[v]--\) 犯错 for (int i=head[u];i;i=e[i].nxt) { int v=e[i].v; f[v]+=f[ 阅读全文
摘要:
/* 食物链 拓扑图DP */ #include <cmath> #include <queue> #include <cstdio> #include <vector> #include <cstring> #include <iostream> #include <algorithm> #def 阅读全文
摘要:
##入门 P1081 [NOIP2012 提高组] 开车旅行 tj前:看到第一第二大,可以倍增维护,但是这建边也太恶心了,然后对于第一问我在挨个点跑一边?倍增起码有个区间吧,宁给我个 \(x_0\) 我也不知道该从那么跑哇,只能从头往后排,这不曼斯? 比值可以模拟,但是这该怎么跑 tj后:看了看可以 阅读全文