本文是笔者第二篇解题报告.从现在开始,会将练的一些题发到博客上并归类到"解题报告"标签中. 琪露诺是这样一道题 这道题可以用纯DP做,但是据说会超时.(为什么?看起来过河这题比它数据大多了)于是到Luogu题解上找到了单调队列优化. 首先讲一下纯DP思路 假设我们的⑨正在河中央,编号为i的格子上. 观察琪露诺的移动规律可得,琪露诺再往下走只能走到编号为i + l 到 i + r 之间的格子上. 于是想到,琪露诺之所以现在能在这里,一定是上一步从编号为 i - r 到 i - l 的格子…
\(单调队列\) 或 \(堆\) 优化 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #define R(a,b,c) for(register int a = (b); a <= (c); ++ a) #define nR(a,b,c) for(register int a = (b); a &g…
题目大意:琪露诺的冰雪小屋,我做的第一道大模拟题. 题解:模拟... 卡点:无数小错误,要是没有写一点调一点,那大概是永远调不出来了... C++ Code: #include <cstdio> #include <cstring> #include <queue> #include <cstdlib> #define PutRe(x) {puts(x); return ;} inline int min(int a, int b) {return a &l…