10 2016 档案
摘要:母题:矩阵中每个点有权值,每经过一个点就累加权值,求从a点到b点的最优(最大)路线。 题型1: 从左上到右下,只能向下或者向右 for 行 for 列 dp=max dp左,dp上; 扫一遍就行 有时可能会是bfs+记忆化搜索,仔细看题 题型2: 从左上到右上,只能向下、上、右,不能走重复的点。 这
阅读全文
摘要:比赛的时候写了个记忆化搜索,超时了。 后来学习了一下,这种题目应该用拓扑排序+DP来做。 dp[][]保存走到[第i个节点][走过j个点]时所用的最短时间。 pre[][]用前驱节点求路径 然后遍历一下dp[n][],求满足t范围的最大下标。
阅读全文
摘要:将DAG图转化为顺序排列的形式 可应用于DP求最长路、基于两两优劣关系求排名等题型。 前向星版代码: 邻接表版代码:
阅读全文
摘要:好久没写搜索题了,就当练手吧。 vis[][][1025]第三个维度用来维护不同key持有状态的访问情况。 对于只有钥匙没有对应门的位置,置为'.',避免不必要的状态分支。
阅读全文
摘要:用DFS+记忆化写了一下,拓扑排序+DP的我还没弄明白。据说Codeforces 721C就是这类题目,因为有费用限制,DFS不太好写,有时间把DP法想明白来。
阅读全文
摘要:题目:多次给出信息,告诉你[a,b]区间的和,求多少个错误信息(错误信息不考虑)。 乍一看有点像线段树,但想想就发现这个并不能用线段树方便地解决。后来经提醒是并查集的一种经典题型。 把区间抽象为并查集的子节点和母根结点,子节点存放了到根节点的区间和。这样当引入一个新的区间,如果区间左右界根节点不同就
阅读全文
摘要:比赛的时候一眼就看出是字典树+DFS了,然而这题题意比较难理解,还有不少WA点。所以很快敲完之后和队友反复斟酌题意,修改代码。结果还是交了3发WA。最后猜测目录和书在同一个母目录域下同名是不同的,增加了状态标记才AC。 赛后觉得比赛的时候写得比较乱,所以抽空重构了一遍。
阅读全文
浙公网安备 33010602011771号