随笔分类 - dp
摘要:link Solution 不难看出编号为 \(i\) 的服务员我们可以让他(她?)一定服务进来的编号 \(\equiv i\bmod{m}\),那么我们就可以对于每个服务员单独考虑,然后最后加起来即是答案。 考虑设 \(f_{i,j,k}\) 表示现在还有 \(i\) 个客户,该服务员还要继续工作
阅读全文
摘要:link Solution 我们可以发现的是,奶酪的投放顺序不会影响我们老鼠能否吃到的概率。考虑破环成链(编号 \(0\) ~ \(n-1\)),然后我们可以设 \(c_i\) 表示第 \(i\) 段的奶酪个数,\(x\) 为越过整圈的次数,那么对于第 \(n-1\) 只老鼠,它吃不到的概率就是:
阅读全文
摘要:link Solution 首先我们可以发现,对于任意一个选出来的物品序列,如果我们排序之后奇偶分类,那么分成的两堆一定相差 \(\le n-1\) 。 然后我们考虑dp,我们可以设 \(f_{a,w}\) 表示选 \(a\) 个物品,重量和为 \(w\) 的价值和最大值,那么对于 \(a\) 为偶
阅读全文
摘要:link Solution 我们考虑设 \(f_{u,i}\) 表示的是以 \(u\) 为根的子树,\(u\) 连一条长为 \(i\) 的链的已选边的边权之和最大值。 考虑如何转移,我们可以设 \(t_{i,j}\) 表示儿子选了长度为 \(1\) 的链的个数减去长度为 \(3\) 的链的个数为 \
阅读全文
摘要:link Solution 我们考虑如何判定一个序列是否合法,可以看出的是,我们可以枚举每个排列,如果当前我们构造的 K 失配了,那么我们就把排列中的下一位设为失配的该位值即可。如果存在一个排列使得可以走完整个序列,这个序列即为合法。 我们考虑设 \(f_{i,S}\) 表示的是第 \(i\) 位排
阅读全文
摘要:link Solution 首先我们考虑 \(B_i=0\) 的情况怎么解决,可以发现的是,我们设 \(f_i\) 表示从 \(i\) 出发的最大期望贡献,当 \(A_i\) 为最大值时 \(f_i=A_i\),否则如果我们要停止,为 \(A_i\),不停止为 \((f_{i-1}+f_{i+1})
阅读全文
摘要:link Solution 比较懒,所以放了一个OJ里的链接。 这个题感觉还是比较可做。考虑如何判断一个是否合法,那么我们可以使用 dp,转移式即为: \(dp_i=Or_{j=1}^{i-1}[a_i=a_j]dp_{j-1}\) 那么,我们可以对此进行 dp,我们设 \(f_{i,j,0/1}\
阅读全文
摘要:link Solution 我,tr,废物。 不难看出的是,我们可以通过移动我们的游泳和小跳,使得我们游泳或小跳要么直接到一个岛屿的左端点(中间不能跳),要么先游泳或小跳再跳大跳到一个岛屿的右端点。然后我们可以直接进行dp了。 虽然说得很轻巧,不过实现起来需要智力,然而我没有。我们考虑到岛屿的左端点
阅读全文
摘要:link Solution 首先我们可以求出任意的 \(\text{dis}(u,i),\text{dis}(i,t)\)。 考虑二分答案,对于当前二分的 \(x\),我们最终接到电话可行的点一定就是就是那些 \(\text{dis}(i,t)\le x\) 的 \(i\) 点。对于边 \((u,v
阅读全文
摘要:再次Orz ljs神,又赛场A掉大家都不会的题目。 T1 & T2 & T3 都太蠢了,T1 sb dp,T2 sb 模拟,T3 明明可以 \(\Theta(n\times m)\),出题人却只开到 \(4\times 10^4\) 。 T4 Description 求 \(n!\) 在除去所有 \
阅读全文
摘要:CF848D Shake It! link Solution 可以想到我们可以设 \(f_{i,j}\) 表示增加了 \(i\) 个点的图最小割为 \(j\) 的方案数。然后你发现如果把一条边 \((u,v)\) 增加了 \((u,w),(w,v)\) 那么,\((u,w)\) 和 \((w,v)\
阅读全文
摘要:link Solution 可以想到的是,如果我们选了区间 \([L,R]\),那么相当于我们对 \(s\) 进行 \([L,n]\) 的操作,对 \(t\) 进行 \([R+1,n]\) 的操作(注意一定得是后缀,因为前缀换是前面的)。 那么我们就可以对于每一个后缀都求出 \(s,t\) 的变化情
阅读全文
摘要:link Description 有 \(n\) 个人需要接待,每个人可以被接待的时间为 \([L_i,R_i]\),你提前 \(j\) 分钟接待他的话可以产生 \(j\times p_i\) 的贡献。可以在门口和沙发之间来回,需要时间为 \(L\),待在门口或者辗转都会减少贡献,在沙发上会增加贡献
阅读全文
摘要:link Description 给出一个 \(n\) 个点的 AVL 树,求保留 \(k\) 个点使得字典序最小。 \(n\le 5\times 10^5\) Solution 因为我很 sb ,所以只会 \(\Theta(n\log^2n)\)。 首先可以注意到的是,树高是 \(\Theta(\
阅读全文
摘要:link Description 有 \(n\) 座山,可以铲平 \(k\) 座山,问使得积水为偶数的方案数是多少,模 \(10^9+7\) 。 \(n\le 2.5\times 10^4,k\le 25\) Solution 很sb的一个题目,但是我傻了。 可以先考虑如何计算最后的积水体积。我们可
阅读全文
摘要:link Description 桌面上摊开着一些卡牌,这是她平时很爱玩的一个游戏。如今卡牌还在,她却不在我身边。不知不觉,我翻开了卡牌,回忆起了当时一起玩卡牌的那段时间。 每张卡牌的正面与反面都各有一个数字,我每次把卡牌按照我想的放到桌子上,而她则是将其中的一些卡牌翻转,最后使得桌面上所有朝上的数
阅读全文
摘要:link Solution 考虑一个不合法方案,它一定最后位置的逆序对数不为 \(0\),而且可以发现的是,存在对称方案使得最后逆序对数奇偶性不同,所以我们如果加上 \((-1)\)^{\sigma(P)} (即逆序对数奇偶性),那么两者就会抵消掉。 所以可以枚举一个点的最后位置,用状压 dp 解决
阅读全文
摘要:题目传送门 Description 给出一个 \(3\times n\) 的带权矩阵,选出一个 \((1,1)\to (3,n)\) 的路径使得路径上点权之和最大。 \(n\le 10^5\) Solution 感觉挺妙的一个题,不知道为什么在 CF 上评分只有 2300,或许是因为外国人科技树比较
阅读全文
摘要:题目传送门 Description 给定 \(n, k\),请求出长度为 \(n\) 的逆序对数恰好为 \(k\) 的排列的个数。答案对 \(10 ^ 9 + 7\) 取模。 对于一个长度为 \(n\) 的排列 \(p\),其逆序对数即满足 \(i < j\) 且 \(p_i > p_j\) 的二元
阅读全文
摘要:货币 题目传送门 Description Solution 假设 \(\text{nxt}_i\) 为与 \(i\) 同块的下一个点的位置,那么设 \(f_l\) 表示左端点在 \(l\) 时最靠右的合法右端点,那么可以得到: \(f_l=\max_{i=0}^{l-1}\{\text{nxt}_i
阅读全文

浙公网安备 33010602011771号