摘要: 题意:求每个长度为k的数组的最大值和最小值 思路: 1.用线段树创建维护最大值和最小值,遍历询问,简单复习了一下...有点手生 2.单调队列: 可以看一下详解 单调队列顾名思义就是一个单调递增或者递减的队列,我们可以通过队列瞬间得到当前队列的最大值和最小值。以查找当前区间最小值为例,我们需要维护一个 阅读全文
posted @ 2018-07-05 19:09 KirinSB 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 思路: 一道BFS题,和以前的BFS有点不同,这里的vis数组需要记录每次走时的状态,所以开了3维,只对该状态下的vis修改。 注意坑点:S的位置是可以走的 代码: 阅读全文
posted @ 2018-07-05 16:59 KirinSB 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 思路: 直接DP也能做,这里用斜率DP。 dp[i] = min{ dp[j] + ( sum[i] - sum[j] + 10 )*pr[i]} ; k<j<i => dp[j] - dp[k] <pr[i]*( sum[j] - sum[k] ) 再套模板 阅读全文
posted @ 2018-07-05 11:22 KirinSB 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 思路: 莫队模板题,转换几次就是找逆序数,用树状数组来储存数就行了 注意要离散化 代码: 阅读全文
posted @ 2018-07-05 00:08 KirinSB 阅读(157) 评论(0) 推荐(0) 编辑