一、需要思考的问题包括以下几点: 双指针是什么,什么时候需要用到双指针 通用的模板是什么 实现过程中需要注意的细节有哪些 常见的双指针题型有哪些 二、模板整理 三、专题训练 1.Leetcode283 1 class Solution { 2 public: 3 void moveZeroes(ve ...
分类:
其他好文 时间:
2020-04-08 22:38:58
阅读次数:
79
本题我们首先很容易可以列出朴素的状态和转移方程 f[i][j],代表前i个分j次购买的最小值 那么显然,这个值可以根据j-1次的所有结果更新而来,但这样的算法是n^2的,不过这题数据范围好像不太大 因为我是专题训练,所以我直接用上了斜率优化的方法 因为题目的转移方程是 f[i][x]=min(f[j ...
分类:
其他好文 时间:
2020-02-13 16:51:34
阅读次数:
58
在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。 Input 输入含有多组测试数据。 每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将 ...
分类:
其他好文 时间:
2019-07-31 16:54:08
阅读次数:
117
ST表简介 ST表示解决RMQ问题的一种暴力手段,处理时间$O(n\log_{2}{n})$,查询时间$O(1)$,空间$O(n\log_{2}{n})$. 处理 ST表的第0列存放第一层数据,即原始数据; ST表的第1列存放第二层数据,即步长为$2^0$的$min/max$的数据; ST表的第2列 ...
分类:
其他好文 时间:
2019-07-29 00:05:11
阅读次数:
129
最短路练习 0. Til the Cows Come Home POJ - 2387 完美的模板题 1 //#include<Windows.h> 2 #include<iostream> 3 #include<algorithm> 4 #include<cstring> 5 #include<cs ...
分类:
其他好文 时间:
2019-05-26 19:46:25
阅读次数:
157
题意与分析 题意大致是这样的:给定一个$n\times s$的矩阵,每次可以随机的在这个矩阵内给一个格子染色(染过色的仍然可能被选中),问每一行和每一列都有格子被染色的次数的期望。 这题如果从概率(从正方向推)就会白给,不信你自己试试;而定义反方向的推导($e_{i,j}$意为从i行j列已有染色格子 ...
分类:
其他好文 时间:
2019-04-19 13:25:29
阅读次数:
155
斜率优化训练记录 前言 斜率优化一般用于优化dp的转移,借着训练斜率优化的相关问题来提升一些DP思维。选择老学长留下的专题场来练手,由于该场题数较多,以及个人不太愿意长时间进行单一专题训练,因此开此文来记录断续的训练结果和心得。 记录 题一 由一道简单入门题 "玩具装箱" 开头,题意和思路比较简单就 ...
分类:
其他好文 时间:
2019-04-06 16:43:39
阅读次数:
136
这题可以用普通bfs来做 也可以用双向bfs来做(先欠着) 有点类似专题训练的一题 不过那题是找钥匙开门 不过都用了状态压缩 题意: n,m(<=16) 的网络上有t(<=3)小写字母 并且网络上有其大写字母 要求最少的步使得所有小写字母到大写字母里面去 每步可以多个小写字母同时移动(上下左右加不动 ...
分类:
其他好文 时间:
2019-02-21 00:06:16
阅读次数:
244
这个专题主要学了两个数据结构 一个是线段树 一个是树状数组 线段树主要求区域操作 建树、单点查询、单点修改、区间查询、区间修改。 代码较为复杂 参考模板 树状数组 用于求和效率很高 进阶则为区域修改同一个值十分方便 主要有两种操作: 单点修改 区域查询(基础) 区域查询的差值即为单点查询 也比枚举算 ...
分类:
其他好文 时间:
2019-02-10 00:12:27
阅读次数:
208
数位dp详解:https://www.cnblogs.com/liuzuolin/p/10348718.html (内容会持续更新哦,大家一起学习吧) ...
分类:
其他好文 时间:
2019-02-02 17:03:46
阅读次数:
180