学校食堂 题目链接:https://www.luogu.org/problem/P2157 数据范围:略。 题解: 发现$B$特别小,很容易想到状压。 即在$dp$的时候弄出来$f_{(i,j,k)}$表示前$i - 1$个都打完了饭,状态$j$也已经打完饭了,当前打饭的是$i$,上一个打饭的是$i ...
分类:
其他好文 时间:
2019-10-15 21:25:48
阅读次数:
79
大神题。 每个部分分的算法都值得思考。 50pts:状压dp 把节点按深度排序,一定是深度连续的几段,即对应的差分数列只有0/1,在差分数列上进行状压dp,在中间加0,末尾添1。 最外层枚举节点编号保证顺序。 70pts:背包dp 设f[i][j]为含有i个点,深度为j的树的方案数。用带限制的完全背 ...
分类:
其他好文 时间:
2019-10-15 19:26:46
阅读次数:
71
大意: 给定串$s$, 字符集为字母表前$m$个字符, 求一个$m$排列$pos$, 使得$\sum\limits_{i=2}^n|{pos}_{s_{i-1}}-{pos}_{s_{i}}|$最小. 状压$dp$, 费用提前计算一下, 预处理$cost_{i,j}$表示与字符$i$相连的状态为$j ...
分类:
其他好文 时间:
2019-10-09 23:47:32
阅读次数:
280
传送门 注意到 $m$ 只有 $20$ ,考虑一下状压 $dp$ 设 $f[S]$ 表示当前确定的字符集合为 $S$ ,那么转移就考虑从最右边加入的下一个字符 $c$ 那么问题来了,代价如何计算 考虑每次加入一个字符以后对于所有字符间的移动$(c_i,c_{i+1})$产生的代价 那么显然只有当 $ ...
分类:
其他好文 时间:
2019-10-09 17:38:19
阅读次数:
82
首先能够想到是 状压dp模板 取 dp[state,i,j] 表示state状态下倒数第二个岛为i,最后一个岛为j时的最优解, num[state,i,j] 为相应的路径数目,其中 state 的二进制表示的i位为1表示岛i被访问过,反之为0。 则显然当有 边(i,j) 存在时,有如下初值可赋: d ...
分类:
其他好文 时间:
2019-10-09 12:54:57
阅读次数:
81
1.训练赛认真参加,争取每次做完铜牌题。之后将能力范围内的铜银题补上。每场训练赛认真参加。每场训练赛认真参加。每场训练赛认真参加。 2.新知识补全:图论:lca,倍增,基尔霍夫矩阵树。 数据结构:树刨,点分治,树分治。 dp:状压dp,背包模型。 3.复习:线段树进阶。最短路剩余题。MST。简单图论 ...
分类:
其他好文 时间:
2019-10-08 14:16:37
阅读次数:
70
P1896 互不侵犯【状压dp】 用01串表示每一行的可行解 列与列之间的限制条件在转移的时候continue x&=( x)可以找到x的二进制位上有多少个1 关于位运算的优先级!不确定就无脑加括号哦哦 ...
分类:
其他好文 时间:
2019-10-08 12:31:53
阅读次数:
70
"Problem" 这题的题意是 求一条 经过 起点和终点的 最长路径。且一个点只能经过一次。 我们设定 $dis_{i,j}$ 为 i 到 j 的距离(应该没有重边) 要注意的是 不能用 $Floyd$ 求最长路 这样会挂掉 因为你这样 就没办法保证 点 $i$ 只经过一次 显然是状压dp 我们考 ...
分类:
其他好文 时间:
2019-10-07 11:24:02
阅读次数:
82
一、定义 总述 状态压缩动态规划,就是我们俗称的状压DP,是利用计算机二进制的性质来描述状态的一种DP方式。 很多棋盘问题都运用到了状压,同时,状压也很经常和BFS及DP连用。 状压dp其实就是将状态压缩成2进制来保存 其特征就是看起来有点像搜索,每个格子的状态只有1或0 ,是另一类非常典型的动态规 ...
分类:
其他好文 时间:
2019-10-06 13:30:21
阅读次数:
1020
[多校联考2019(Round 5)] [ATCoder3912]Xor Tree(状压dp) 题面 给出一棵n个点的树,每条边有边权v,每次操作选中两个点,将这两个点之间的路径上的边权全部异或某个值,求使得最终所有边权为0的最小操作次数。 $v \leq 15,n \leq 10^5$ 分析 首先 ...
分类:
其他好文 时间:
2019-10-06 11:25:41
阅读次数:
70