![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
各种dp
favomj
吃枣药丸
展开
-
状态压缩
题目链接:http://ac.jobdu.com/problem.php?pid=1338 分析:状态压缩dp 状压DP:DP[S]代表状态为S的时候活着的概率。 相应位的二进制数:1代表活着。0代表死了。 #include #include #include using namespace std; #define maxn 20 int n; int t ;转载 2017-03-03 16:44:53 · 173 阅读 · 0 评论 -
状态压缩dp入门题目
题目链接:http://poj.org/problem?id=3254 题目大意是有M×N的玉米地,但其中有些是不肥沃的,不能种植。用1来代表肥沃,0代表不肥沃。另外奶牛不喜欢挨着吃,也就是说要间隔着种植,求有几种种植方式,并将计算结果对1E8取模。 #include #include using namespace std; int dp[12][1 << 12]; /转载 2017-05-11 10:35:30 · 254 阅读 · 0 评论 -
划分型循环DP
题目链接:http://codevs.cn/problem/1085/ 分析:求各个区间值,枚举起点,填充基位DP,划分DP处理 #include #include #include #include using namespace std; #define mod(a,b) ((a%b+b)%b) #define maxn 505 #define REP(a,b,c) for(i原创 2017-05-09 15:40:20 · 291 阅读 · 0 评论 -
划分dp,区间差最小
题目链接:http://codevs.cn/problem/3162/ 分析:思路一样,但半天没写出dp方程= =。看了题解才知道,可以先求到 j 个人最多的抄书数目 ,再求最小dp[[i][j] #include using namespace std; #define maxn 105 int m , k; int dp[maxn][maxn]; int a[maxn]; int s原创 2017-05-09 17:13:38 · 540 阅读 · 0 评论 -
A,B两个序列相同的子序列个数
A,B两个序列相同的子序列个数原创 2017-08-23 14:17:55 · 1449 阅读 · 0 评论 -
poj 3286 数位统计
题意:找出区间 [n,m] 中有多少个零 分析:从个位往最高位递推,令当前位为0,统计其余位置可能的变化 #include #include #include #include using namespace std; typedef long long int ll; ll n, m ; ll deal(ll x) { if( x < 0 )return 0; ll原创 2017-09-13 18:12:00 · 157 阅读 · 0 评论 -
POJ2411 轮廓线动态规划典型例题
在做状态压缩时看到了这道题: 总结一下: 状态压缩特点: 某一维或几维非常小 最优性原理,无后效性 (遍历的点的具体顺序对以后的决策是没有影响的) 基于连通性的状态压缩详解:http://www.doc88.com/p-9009338580746.html 题意:给出一个n*m的矩形,然后用1*2大小的多米若骨牌去填充n*m的这个矩形,问有多少种填充方法。 分析参考:http:原创 2017-10-12 16:46:38 · 266 阅读 · 0 评论