随笔分类 -  动态规划 -> 线性DP

摘要:题意略 可见k的取值小于等于5,所以不妨只考虑k的值为5的情况, 若k小于5,令多出来的每行N为0即可转化为k=5的情况 发现,当我们从1到n依次考虑放置学生在哪个位置时,学生高矮的单调性就得到了满足 所以,考虑这样一种dp方案: 令dp[a1][a2][a3][a4][a5]表示第1行已经放了a1 阅读全文 »
posted @ 2020-08-20 21:30 熹圜 阅读(83) 评论(0) 推荐(0) 编辑
摘要:解: 本质上就是说,每行或每列上不能放大于等于三个炮 考虑这样一个dp: 令f[i][j][k]表示:前i行,有j列没放,有k列放一个,((m - j - k)列放了两个) 则有如下转移: 1、这一行不放,f[i][j][k]=f[i1][j][k] 2、这一行放一个: 2.1、这 阅读全文 »
posted @ 2020-08-19 07:40 熹圜 阅读(110) 评论(0) 推荐(0) 编辑
摘要:解: 题目要求在上下数字和的差值最小的情况下令反转次数最小 所以状态里要记上前i张骨牌的差值是多少 但是因为差值可能为负数,所以有以下两种处理方法: 1、平移值域 2、观察发现,不管如何翻转,前i张骨牌的上下数字之和为定值, 所以我们只要记录上面一行或下面一行数字的和,就知道了差值为多少 在这里用第 阅读全文 »
posted @ 2020-08-16 22:54 熹圜 阅读(105) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示