随笔分类 -  数据结构 -- 单调队列

摘要:【CF1133E】K Balanced Teams(动态规划,单调队列) 题面 "CF" 让你把一堆数选一些出来分成不超过K组,每一组里面的最大值和最小值之差不超过5,求最多有多少个人元素可以被分组。 题解 设f[i][j]表示把前i个数分成j组的最多人数。 然后单调队列转移一下 阅读全文
posted @ 2019-04-04 16:55 小蒟蒻yyb 阅读(438) 评论(0) 推荐(0) 编辑
摘要:【BZOJ1293】[SCOI2009]生日礼物(单调队列) 题面 "BZOJ" "洛谷" 题解 离散之后随便拿单调队列维护一下就好了。 cpp include include include include include include include using namespace std; 阅读全文
posted @ 2018-10-05 22:06 小蒟蒻yyb 阅读(228) 评论(0) 推荐(0) 编辑
摘要:【BZOJ1047】[HAOI2007]理想的正方形(单调队列,动态规划) 题面 "BZOJ" "洛谷" 题解 直接一个单调队列维护一下没给点和它前面的n个位置的最大值,再用一次单调队列维护连续n列的,每个数和前面n个数的最大值,最小值同理,就做完了。 cpp include inclu 阅读全文
posted @ 2018-09-29 19:55 小蒟蒻yyb 阅读(176) 评论(0) 推荐(0) 编辑
摘要:【BZOJ1758】【WC2010】重建计划(点分治,单调队列) 题面 "BZOJ" "洛谷" Description Input 第一行包含一个正整数N,表示X国的城市个数. 第二行包含两个正整数L和U,表示政策要求的第一期重建方案中修建道路数的上下限 接下来的N 1行描述重建小组的原有方案,每行 阅读全文
posted @ 2018-04-13 15:02 小蒟蒻yyb 阅读(448) 评论(2) 推荐(0) 编辑
摘要:【BZOJ2806】Cheat(后缀自动机,二分答案,动态规划,单调队列) 题面 "BZOJ" "洛谷" 题解 很有趣的一道题啊 对于在所有的串上面进行匹配? 很明显的后缀自动机 所以先构建出广义后缀自动机 然后这个拆分很像一个dp 同时,要求的东西很像一个可以二分的样子 所以二分一个答案,考虑 阅读全文
posted @ 2018-03-13 20:24 小蒟蒻yyb 阅读(338) 评论(2) 推荐(0) 编辑
摘要:【BZOJ1499】瑰丽华尔兹(动态规划) 题面 "BZOJ" 题解 先写部分分 设f[t][i][j]表示当前在t时刻,位置在i,j时走的最多的步数 这样子每一步要么停要么走 时间复杂度O(nmt) 得分40 70分 (据说这样能过???) cpp include includ 阅读全文
posted @ 2018-02-27 13:59 小蒟蒻yyb 阅读(258) 评论(2) 推荐(0) 编辑
摘要:【BZOJ2442】修建草坪(动态规划,单调队列) 题面 "权限题。。洛谷" 题解 设f[i]表示前i个里面选出来的最大值 转移应该比较显然 枚举一个断点的位置,转移一下就好 f[i]=max(f[j1]+s[j]s[i]) 所以可以单调队列优化一下 (不优化用各种玄学可以拿90分。 阅读全文
posted @ 2018-02-07 21:37 小蒟蒻yyb 阅读(278) 评论(0) 推荐(0) 编辑
摘要:【BZOJ1855】股票交易(动态规划,单调队列) 题面 "BZOJ" 题解 很显然,状态之和天数以及当天剩余的股票数有关 设f[i][j]表示第i天进行了交易,剩余股票数为j的最大获利 每次枚举可以转移过来的天数以及股票数 再枚举买入或者卖出的数量, 时间复杂度O(T2Mp2) 阅读全文
posted @ 2018-02-07 15:43 小蒟蒻yyb 阅读(280) 评论(0) 推荐(0) 编辑

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