[luoguP1947] 笨笨当粉刷匠_NOI导刊2011提高(10)(DP)


传送门

f[i][j][k]表示前i行,最后一行前j个,选k次最优解

ntr[i][j][2]表示当前行区间i~j涂0或1所能刷的正确格子

#include <cstdio> #define N 51 #define M 2501 #define max(x, y) ((x) > (y) ? (x) : (y)) char s[N]; int n, m, t, ans; int ntr[N][N][2], f[N][N][M]; //f[i][j][k]表示前i行,最后一行前j个,选了k次的最优解 int main() for(j = 0; j <= m; j++) for(k = 1; k <= t; k++) ans = max(ans, f[i][j][k]); } } printf("%d\n", ans); return 0; }

  



上一篇:[luoguP2704] 炮兵阵地(状压DP)

下一篇:[luoguP3092] [USACO13NOV]没有找零No Change(状压DP + 二分)


DP
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图