CF1392H - ZS Shuffles Cards 题目大意 给定$n$张卡和$m$个终止符,初始时随机打乱成排列,每次操作选出最前面的卡$x$拿走 1.如果$x$不是终止符,将$x$放入集合 2.如果$x$是终止符,那么重新打乱$n+m$张卡 求期望多少步$S$变成全集 分析 令$dp_i$表 ...
分类:
其他好文 时间:
2021-05-24 06:43:39
阅读次数:
0
P1472-奶牛家谱 思路1:稍微优化掉枚举偶数可以刚好卡满分 设dp[i][j][k]表示第j层i个节点共k个节点的方案数(mod9901),有 \[ dp[i][j][k]=∑_{t\geq i/2}^{n}dp[t][j-1][k-i]*C_{t}^{\frac{i}{2}} \] 组合数用l ...
分类:
其他好文 时间:
2021-05-24 04:58:45
阅读次数:
0
给定一棵$n$个点的树,每个点有一个颜色(黑或白)。你可以任选一个点出发,能执行两种操作:走到一个相邻点并翻转其颜色;翻转当前点颜色。求使得所有节点颜色为黑的最少操作次数。 ...
分类:
其他好文 时间:
2021-05-24 04:12:00
阅读次数:
0
LUK-Triumphal arch (学长推荐的,说是好欺负的题) 首先,答案$k$具有单调性, $k$越大, 正确的可能性越大,所以考虑二分$k$. 然后,用树形DP进行检查。 一定要把$B$ 所在节点的所有儿子都涂上色。但是有时可能无法一次让该节点的儿子全都涂黑,所以可以提前将部分点涂黑。 $ ...
分类:
其他好文 时间:
2021-05-23 23:53:49
阅读次数:
0
动态规划——剑指 Offer 42. 连续子数组的最大和 题目: 思路: dp数组的定义:dp[i]是以 nums[i] 结尾的最大子数组和。 base_case:dp[0] = nums[0] 状态转移方程:dp[i]有两种「选择」,要么与前面的相邻子数组连接,形成一个和更大的子数组;要么不与前面 ...
分类:
编程语言 时间:
2021-05-20 17:50:09
阅读次数:
0
题目链接 思路 关键在于想到括号匹配用栈维护的一个过程。 求最长的子串,所以每一个右括号尽可能匹配能匹配的最近的左括号。 \(dp[i]\):第i位向左匹配能匹配到的最长距离。 若当前位置$s[i]=)$且$stack.size()>0$,那么就说明当前位置的右括号可以匹配到左括号,到这一位的最长距 ...
分类:
其他好文 时间:
2021-05-04 16:27:32
阅读次数:
0
\(\text{Problem}:\)[THUSC2016] 成绩单 \(\text{Solution}:\) 对于此类抽取一段区间计算贡献后将两端合并的问题,考虑设计区间 \(dp\)。设 \(f_{l,r}\) 表示区间 \([l,r]\) 的最小代价,\(g_{l,r,p,q}\) 表示区间 ...
分类:
其他好文 时间:
2021-05-04 16:26:40
阅读次数:
0
滚动数组优化dp CF570E Pig and Palindromes 原题链接 题意: 给定一个n*m(n,m ? 500)的字符矩阵,从(1,1)走到(n,m),每次只能向右和向下走,那么有多少种走法可以组成一个回文串。 思路: 由于形成的是回文串,我们可以假设有两个点,点A从(1,1)出发,点 ...
分类:
编程语言 时间:
2021-05-04 15:23:04
阅读次数:
0
题目 由于有三个方向,所以在普通二维dp上再加一个方向维度,用三维数组进行dp。 $f[i][j][\(→\)]$(\(f[i][j][0]\)) 表示从当前格子的左边走到当前格子能取到的最大整数之和。 $f[i][j][\(↓\)]$ (\(f[i][j][1]\)) 表示当前格子的上边边走到当前 ...
分类:
其他好文 时间:
2021-05-03 12:57:39
阅读次数:
0
原题链接 考察:最短路 思路: 很容易看出t就是一般最短路的权值,快速地打了一遍dijkstra板子结果发现输出结果和样例不一样,那么答案错在哪里呢? 我们调试一下就可以发现,到达中间某点的耗时晚,不一定到达终点就晚,因为到达时间由到达每个点的时间和速度决定. 之前说过最短路可以和dp联系起来,那么 ...
分类:
其他好文 时间:
2021-05-03 12:44:50
阅读次数:
0