Codeforces Round 633(Div.2) $A.Filling\ Diamonds$ 答案就是构成的六边形数量+1 $B.Sorted\ Adjacent\ Differences$ 考虑排完序之后从中间开始一左一右选择即可 $C.Powered\ Addition$ 考虑对于每个数, ...
分类:
其他好文 时间:
2020-04-13 09:12:53
阅读次数:
110
RESTful = Representational State Transfer 即表现层状态转移 加 ful (即形容词后缀) 则表示是形容词性的 这样说可能不好理解,表现层应该就是我们操作的对象即资源,通过CRUD等操作 使用不同的请求方式 GET(获取资源) POST(创建资源) PUT(更 ...
分类:
其他好文 时间:
2020-04-13 00:16:19
阅读次数:
84
B(DP) 最重要的是状态转移对同一阶段的影响, 就像01背包优化为什么要倒叙,但这道题不光要倒叙,还要把这阶段的转移先存起来,最后统一保存 就避免了转移同一阶段相互影响 至于排序,当然希望升级多余的经验越多越好。 #include <bits/stdc++.h> #define RE regist ...
分类:
其他好文 时间:
2020-04-12 22:14:12
阅读次数:
104
LINK: "Removing Robots" 没想到 自闭。 考虑了一个容斥 发现不合法方案难以计算。 就算可以计算也几乎是n^2的做法。 考虑dp 左边会对右边产生影响 所以考虑先dp右边的再考虑左边的。 至于dp 自然是f[i]表示这个i~n这么多点的方案数。 设 i向右第一个影响不到的点为w ...
分类:
其他好文 时间:
2020-04-12 20:47:37
阅读次数:
67
单调队列,即内部元素相对于比较器有序的队列,可以方便的查询序列中某个连续区间内的最大/最小值 也能在状态转移时优化决策以降低时间复杂度。(嗯,这句是OI-Wiki上说的,作为蒟蒻qwq我并不知道如何优化dp) 比如我们想知道一个长为n的数字序列中每连续k个数中最小的那个数 如果暴力求解的话,遍历从1 ...
分类:
其他好文 时间:
2020-04-12 20:39:47
阅读次数:
87
【$Description$】 网格中每步可以走$(0,\cdots M_x,0\cdots M_y)$中任意非零向量,有$K$种向量不能走,分别是$(r_1,r_1),(r_2,r_2),\cdots , (r_K,r_K)$。 $r_i$一定是$10$的倍数。求从$(0,0)$走到$(Tx,Ty ...
分类:
其他好文 时间:
2020-04-12 16:13:49
阅读次数:
64
题目描述 题解 第一次写动态dp,就是把转移变成矩阵然后用数据结构维护 把式子变成树的形式,等于从下往上每次合并儿子 树剖,叶子直接维护概率,非叶子(操作符)维护 重儿子是多少时的01变化 儿子只有两个,转移矩阵取决于自己以及轻儿子 这样的好处是每次修改只用修改向上的链顶父亲的矩阵,修改量是O(lo ...
分类:
其他好文 时间:
2020-04-12 12:48:06
阅读次数:
68
动态规划(上):如何实现基于编辑距离的查询推荐? 什么是动态规划呢? 我们需要在各种可能的局部解中,找出那些可能达到最优的局部解,而放弃其他的局部解。这个寻找最优解的过程其实就是动态规划。 动态规划需要通过子问题的最优解,推导出最终问题的最优解,因此这种方法特别注重子问题之间的 转移关系 。我们通常 ...
分类:
其他好文 时间:
2020-04-12 10:36:27
阅读次数:
61
题意 给出一个$N$个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 分析 看到树,还让求最大,这种可能不是贪心就是树形$DP$,贪心的话树的形状没法判断,果断放弃,那么就只能是$DP$了。 既然它让求深度之和,那么我就直接定义以$i$为根时深度和为$DP_i$,接下来就是怎么转移的 ...
分类:
其他好文 时间:
2020-04-11 23:30:22
阅读次数:
75
典型的背包问题 本题当中,每样武器只能选一次,即要么选,要么不选。典型的 01 背包,状态转移: $dp[j]=\min{dp[j b[i]]+a[i],dp[j]}$ 因为有两个限制条件(质量和体积),所以在 01 背包基础上再加一维,空间复杂度$O(n^2)$,时间复杂度$O(n^3)$,数据在 ...
分类:
其他好文 时间:
2020-04-11 22:04:26
阅读次数:
62