随笔分类 -  dp——单调队列优化dp

该文被密码保护。
posted @ 2017-10-17 15:31 友人Aqwq 阅读(2) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2017-10-16 08:25 友人Aqwq 阅读(2) 评论(0) 推荐(0)
摘要:Description 给你一个n长度的数轴和m个区间,每个区间里有且仅有一个点,问能有多少个点 给你一个n长度的数轴和m个区间,每个区间里有且仅有一个点,问能有多少个点 Input * Line 1: Two integers N and M. * Lines 2..M+1: Line i+1 c 阅读全文
posted @ 2017-09-21 09:04 友人Aqwq 阅读(199) 评论(0) 推荐(0)
摘要:Description 某国进行了连续n天的温度测量,测量存在误差,测量结果是第i天温度在[l_i,r_i]范围内。 求最长的连续的一段,满足该段内可能温度不降 某国进行了连续n天的温度测量,测量存在误差,测量结果是第i天温度在[l_i,r_i]范围内。 求最长的连续的一段,满足该段内可能温度不降 阅读全文
posted @ 2017-09-16 18:00 友人Aqwq 阅读(211) 评论(0) 推荐(0)
摘要:描述 猫和老鼠,看过吧?猫来了,老鼠要躲进洞里。在一条数轴上,一共有n个洞,位置分别在xi,能容纳vi只老鼠。一共有m只老鼠位置分别在Xi,要躲进洞里,问所有老鼠跑进洞里的距离总和最小是多少。 输入格式 两个用空格隔开的整数m和n。 这一行m个数字分别表示老鼠的位置 接下来n行每行两个数字分别表示洞 阅读全文
posted @ 2017-08-27 14:31 友人Aqwq 阅读(197) 评论(0) 推荐(0)
摘要:我们可以考虑两种情况 区间之间不相重叠 和 重叠 f【i】【j】表示以当前最后一个区间以 i 结尾 并且选了 j 个区间 不相重叠的话 只要选 1-i-w 的max再加上 包含i在内的前四个数的和 相交的话 考虑因为可选的区间长度是固定的 所以我们可以考虑单调队列优化 sum维护的是前缀和 f【i】 阅读全文
posted @ 2017-08-16 07:57 友人Aqwq 阅读(199) 评论(0) 推荐(0)
摘要:这道题 网上题解还是很多很好的 强烈推荐黄学长 码风真的好看 神犇传送门 学习学习 算是道单调队列优化dp的裸题吧 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int M=205, 阅读全文
posted @ 2017-06-24 11:06 友人Aqwq 阅读(207) 评论(0) 推荐(0)
摘要:又是一道单调队列优化dp的题目 这道题呢 先要了解一个结论,在多种可行的堆叠方案中,至少有一种能使层数最高的方案同时使得底边最短。即底边最短的,层数一定最高。 这个是zkw大神得出的 我也不会证明来着 反正这样之后我们就可以得出正确的方法了 递推式 F[i]=min(sum[j-1]-sum[i-1 阅读全文
posted @ 2017-06-09 19:36 友人Aqwq 阅读(706) 评论(0) 推荐(0)
摘要:这道题也是一道单调队列 很明显满足各种性质 f【i】表示i不选前面k-1个都选的最小损失 维护的是个单增队列 q【head】是队列最小值 代码十分简介 注意longlong就okay #include<cstdio> #include<cstring> #include<algorithm> #de 阅读全文
posted @ 2017-06-09 12:03 友人Aqwq 阅读(201) 评论(0) 推荐(0)
摘要:这道题就是典型的单调队列优化dp了 很明显状态转移的方式有三种 1、前一天不买不卖: dp[i][j]=max(dp[i-1][j],dp[i][j]) 2、前i-W-1天买进一些股: dp[i][j]=max(dp[i-W-1][k]-(j-k)*AP[i],dp[i][j]) 3、前i-W-1天 阅读全文
posted @ 2017-06-09 11:02 友人Aqwq 阅读(237) 评论(0) 推荐(0)