DP
文章平均质量分 88
ixRic
ixRic
展开
-
[多校 NOIP 联合模拟 11.30 T4] ZZH 的旅行(李超树合并) | 错题本
文章目录题目分析代码题目给一棵第 iii 条边边权为 did_idi 的有根树,111 为根。对于每个点 xxx,对于满足如下条件的序列 {s1,⋯ ,sk}\{s_1,\cdots,s_k\}{s1,⋯,sk}:si−1s_i - 1si−1 是 sis_isi 的祖先,且 si−1≠sis_{i - 1} \neq s_isi−1=si。s1=xs_1 = xs1=x 中。求 ∑i=2k(asi−1−dist(si−1,si))bsi\sum_{i = 2}^k (a_原创 2020-11-30 20:33:31 · 537 阅读 · 0 评论 -
[USACO 20OPEN] Exercise G(素数 DP) | 错题本
文章目录题目分析代码题目[USACO 20OPEN] Exercise G分析问题就是求 KKK 的和,使得存在 {ai}\{a_i\}{ai} 满足 lcm ai=K,∑ai=N\text{lcm}\ a_i = K, \sum a_i = Nlcm ai=K,∑ai=N,将所有 aia_iai 分解质因数后 KKK 就是它们质因数对应最高次数的乘积。考虑枚举 KKK 各个质因数的以及它们的幂,其之和不会超过 NNN,通过算贡献的方法进行背包即可。代码#includ原创 2020-11-26 10:48:12 · 167 阅读 · 0 评论 -
[AGC 004B] Colorful Slimes(DP) | 错题本
文章目录题目分析代码题目[AGC 004B] Colorful Slimes分析枚举位移的次数 kkk,显然 0≤k<N0 \leq k < N0≤k<N,接下来只需要知道每个史莱姆在什么时候被取走,因此答案为 min0≤k<N{kx+∑1≤i≤Nmin{ai,ai+1,⋯ ,ai+k}}\min_{0 \leq k < N} \left\{kx + \sum_{1 \leq i \leq N} \min\{a_i, a_{i + 1}, \cdots, a_{i原创 2020-08-03 11:28:10 · 173 阅读 · 0 评论 -
[CodeForces 438E] The Child and Binary Tree(生成函数 + 多项式求逆 + 多项式开根) | 错题本
文章目录题目分析代码题目[CodeForces 438E] The Child and Binary Tree分析首先列出 DP 式,设 dp[i]dp[i]dp[i] 表示用权值和为 iii 的点,形成的合法二叉树数量,于是有 dp[i]={∑k=0i∑j=0i−k(dp[i−k]×dp[i−k−j]×[k∈C])i>01i=0dp[i] = \begin{cases} \sum_{k = 0}^{i} \sum_{j = 0}^{i - k} (dp[i - k] \times dp[i原创 2020-07-09 15:05:32 · 193 阅读 · 0 评论 -
C++ 拉格朗日插值法优化 DP
文章目录拉格朗日插值法简介拉格朗日插值法模板DP 优化思路例题一分析代码例题二分析代码A trick拉格朗日插值法简介众所周知,nnn 个点 (xi,yi)(x_i, y_i)(xi,yi)(任意两个点横坐标不相等)可以确定一个 n−1n - 1n−1 次多项式函数 y=f(x)y = f(x)y=f(x)。拉格朗日插值法可以根据这 nnn 个点求出这个多项式 f(x)f(x)f(x)。当然,实际应用中通常求出横坐标为 kkk 的点在该( nnn 个点确定的)多项式函数上对应的纵坐标的值,代码实现原创 2020-06-11 22:26:22 · 1226 阅读 · 0 评论 -
NOI.AC170 数数(计数DP)
文章目录题目分析代码题目题目描述求有多少对1∼n1∼n1∼n的排列(a,b)(a, b)(a,b)满足m≤∑i=1nmax{ai,bi}m \leq \sum\limits_{i = 1}^{n} \max\{a_i,b_i\}m≤i=1∑nmax{ai,bi}。两个方案(a,b)(a, b)(a,b)和(a′,b′)(a', b')(a′,b′)不同当且仅当存在iii使得ai≠a...原创 2020-03-28 15:31:38 · 254 阅读 · 0 评论 -
LOJ2161 「POI2011 R2 Day1」差值 Difference(细节DP)
文章目录题目分析代码题目「POI2011 R2 Day1」差值 Difference分析考虑枚举两个字符分别作为子序列的出现次数最多和最少的字符。一个性质是,这两个字符到底是不是次数最多或最少的字符并不重要,我们只需要统计最大差值,就能自动避免不符合要求的情况(因为不符合要求的情况一定比大差值小)。简单来说,枚举字符aaa,bbb和区间[l,r][l, r][l,r],计算[l,r][l...原创 2020-03-28 11:17:54 · 361 阅读 · 0 评论 -
[TopCoder 12984] TorusSailing(高斯消元主元法优化)
文章目录题面分析代码题面Vjudge TorusSailing分析首先得到一个DP方程dp[i][j]=12(dp[(i+1) mod N][j]+dp[i][(j+1) mod M])+1①dp[i][j]=\dfrac{1}{2}\left(dp[(i + 1)\ \text{mod}\ N][j]+dp[i][(j + 1)\ \text{mo...原创 2020-02-09 14:37:17 · 580 阅读 · 0 评论 -
[洛谷P2540]【NOIP2015】斗地主增强版(DP+搜索)
文章目录题目分析代码题目P2540 斗地主增强版分析如果不出顺子,那么怎么出最优是可以DP解决的:dp[i][j][k][l]dp[i][j][k][l]dp[i][j][k][l]表示一副牌有iii个炸弹、jjj个三张、kkk个顺子、lll个单牌的最优出法。在这个状态定义下,原来的4i+3j+2k+l4i+3j+2k+l4i+3j+2k+l张牌变成了i+j+k+li+j+k+li+j+k...原创 2019-11-11 20:25:12 · 488 阅读 · 0 评论 -
组合数学基础练习
文章目录T1 DiceGames题目分析代码T2 WordNumber题目分析代码T3 ChristmasTree题目分析代码T4 MuddyRoad2题目分析代码(这四个题目难度并列,相差不大)T1 DiceGames题目TopCoder - 7601 DiceGames描述你有nnn个骰子,并打算用这些骰子发明一个新游戏。为了发明游戏,你需要首先知道扔骰子有多少种结果。我们定义骰子...原创 2019-07-10 11:45:14 · 1266 阅读 · 0 评论 -
COCI2016/2017 Round1T2 Jetpack
文章目录题目题目大意分析代码题目题目大意没说太清楚,是这样的:时间从0开始,每1秒走一格,例如1秒时人在最下面的第2列人在地板上,不按按钮会一直往右走人到了天花板,一直按住按钮就会在天花板上往右走人走到最后一列的右面那一列的1-10行算赢分析直接可行性DP,外层循环枚举列,如果不是墙的话,每次可以从左上或左下飞过来,加一个天花板和地板的特判即可。难点是输出方案。在DP...原创 2019-06-23 11:46:44 · 296 阅读 · 0 评论 -
【CodeForces - 18E】Flag 2(暴力DP+路径输出)
题目题目大意分析代码题目222 S 128128128 MB题目描述 According to a new ISO standard, a flag of every country should have, strangely enough, a chequered field n × mn × mn \times m, each square shou...原创 2018-08-17 11:57:58 · 480 阅读 · 0 评论 -
【UVA - 116】Unidirectional TSP(DP+路径输出)
题目传送门题目大意在数字矩阵中,你可以从第一列的任何一个位置出发,每次可以向右上、右或右下走一步,在最上面一行往上走会走到最下面一行,最下面一行往下走会走到最上面一行(即矩阵从上到下是循环的)。问走到最右边一列经过的数之和最小是多少,并输出走到每一列你所在的行,多解时输出字典序最小的一组解。分析本来是顺推,然后贪心保证每一步从一个最小的行号转移过来,发现有反例…… 倒...原创 2018-08-15 15:40:34 · 270 阅读 · 0 评论 -
【CodeForces】988F·Rain and Umbrellas
题目题目大意分析代码题目传送门题目大意数轴上有一些区间(li,ri)(li,ri)(l_i,r_i)在下雨,在某些点pipip_i上有伞,伞的重量为wiwiw_i,一个点上可能有多把伞,你想通过一个下雨的区间就必须有伞,你可以带很多伞,你行走一个单位长度需要花费你带的所有伞的重量和的代价,问从000走到aaa的最小代价。分析dp[i][j]dp...原创 2018-07-25 10:41:30 · 720 阅读 · 0 评论 -
【半期】1.晨练计划
题目题目描述输入格式输出格式样例输入样例输出输出说明分析代码题目第1题 晨练计划题目描述奶牛们打算通过锻炼来培养自己的运动细胞,作为其中的一员,贝茜选择的 运动方式是每天进行N(1 &lt;= N &lt;= 10,000)分钟的晨跑。在每分钟的开始,贝茜会选择下一分钟是用来跑步还是休息。 贝茜的体力限制了她跑步的距离。 更具体地,如果贝茜...原创 2018-05-17 13:25:30 · 379 阅读 · 0 评论 -
日记★DP★D-尼克的任务
D-尼克的任务题目题目描述输入输出样例输入样例输出状态定义状态转移边界代码D-尼克的任务题目时间限制: 1 Sec 内存限制: 64 MB题目描述尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成。尼克的一个工作日为N分钟,从第...原创 2018-04-24 17:26:12 · 205 阅读 · 0 评论 -
【NOIP普及组】2016模拟考试(10.29)——摆花
问题 C: 摆花(flower.cpp)时间限制: 1 Sec 内存限制: 128题目描述小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆。通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号。为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时同一种花放在一起,且不同种类的花需按标号的从小到大的顺序依次摆列。试编程计算,一共有多少种不同原创 2016-11-01 13:56:44 · 2080 阅读 · 0 评论 -
【NOI OJ】2728 摘花生
2728:摘花生总时间限制: 1000ms 内存限制: 65536kB描述Hello Kitty 想摘点花生送给她喜欢的米老鼠。她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来。地里每个道路的交叉点上都有种着一株花生苗,上面有若干颗花生,经过一株花生苗就能摘走该它上面所有的花生。Hello Kitty只能向东或向南走,不能向西或向北走。问H原创 2016-09-30 13:37:51 · 1021 阅读 · 0 评论 -
【动态规划】UVa 1331 最大面积最小三角形剖分
将一个多边形用它不相交的对角线将它分成若干个三角形,使得最大的三角形面积最小,求最大三角形的面积。如图是一个六边形的几种剖分: 思路:记由点u,u+1,…,v-1,v(u< v)组成的多边形为F(i,j)F(i,j)首先,总的多边形为F(1,N)F(1,N), 对于F(1,N)F(1,N)的一个子多边形F(i,j)(1<=i<j<=N)F(i,j)(1<=i<j<=N),可以在点原创 2017-07-19 17:57:26 · 1868 阅读 · 0 评论 -
【动规】POJ 1141 Brackets Sequence
Brackets Sequence题目描述Let us define a regular brackets sequence in the following way: Empty sequence is a regular sequence. If S is a regular sequence, then (S) and [S] are both regular s原创 2017-09-21 14:09:22 · 345 阅读 · 1 评论 -
二叉树★DP★二叉树的计数
输入第1行:二叉树的前序遍历顺序 第2行:后序遍历顺序输出第1行:1个整数,表示所有可能的二叉树的数量样例输入ABCCBA样例输出4原创 2017-12-22 13:43:43 · 544 阅读 · 0 评论 -
日记★DP★A-子集的和
对于从1到N (1 <= N <= 39) 的连续整数集合,能划分成两个子集合,且保证每个集合的数字之和是相等的。 举个例子,如果N=3,对于{1,2,3}能划分成两个子集合,他们每个的所有数字和是相等的: {3}原创 2017-12-15 12:53:42 · 362 阅读 · 0 评论 -
日记★DP★C-完全背包
(背景很复杂,就是一个裸的完全背包)。输入第一行:背包容量WW 物品个数NN 后面几行:物品价值b[i]b[i] 物品重量w[i]w[i](0≤w[i],b[i]≤W,N≤100000\leq w[i],b原创 2017-12-15 12:57:12 · 380 阅读 · 0 评论 -
日记★DP★B-01背包问题
有 n 件物品, 每件物品有一个价值和一个重量,分别记为: b1,b2, …bn w1,w2, …wn 其中所有的 重量wi 均为整数。 现有一个背包,其最大载重量为W,要求从这n件物品中任取若干件(这些物原创 2017-12-15 12:55:37 · 438 阅读 · 0 评论 -
日记★DP★D-尼克的任务
尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成。尼克的一个工作日为N分钟,从第一分钟开始到第N分钟结束。当尼克到达单位后他就开始干活原创 2017-12-15 13:27:05 · 286 阅读 · 0 评论 -
日记★DP★E-邮票
已知一个 N 枚邮票的面值集合(如,{1 分,3 分})和一个上限 K —— 表示信封上能够贴 K 张邮票。计算从 1 到 M 的最大连续可贴出的邮资。例如,假设有 1 分和 3 分的邮票;你最多可以贴 5 张邮票。很容易贴出 1 到 5 分的邮资(用 1 分邮票贴就行了),接下来的邮资也不难原创 2017-12-15 14:01:14 · 467 阅读 · 0 评论 -
日记★DP★F-邮局
描述一些村庄建在一条笔直的高速公路边上,我们用一条坐标轴来描述这条公路,每个村庄的坐标都是整数,没有两个村庄的坐标相同。两个村庄的距离定义为坐标之差的绝对值。我们需要在某些村庄建立邮局。使每个村庄使用与它距离最近的邮局,建立邮局的原则是:所有原创 2017-12-16 18:19:52 · 517 阅读 · 0 评论 -
日记★DP★G-字串距离
设有字符串X,我们称在X的头尾及中间插入任意多个空格后构成的新字符串为X的扩展串。 例如字符串X为”abcbcd”,则字符串“abcb□cd”,“□a□bcbcd□”和“abcb□cd□”都是X的扩展串,这里“□”代表空格字符。原创 2017-12-16 18:38:48 · 345 阅读 · 0 评论 -
训练日记★动规
日记原创 2017-12-11 13:42:11 · 364 阅读 · 0 评论 -
【动态规划】UVa 437 The Tower of Babylon
题目大意:有N种长方体,每种无限个,从其中选出一些叠成一根柱子(长方体可以旋转),使得上面的长方体的长和宽严格小于下面长方体的长和宽,求柱子的最大高度。思路:“上面的严格小于下面的”,看到这种题,瞬间想到了最长上升子序列。 只是条件从1个变为了2个,多了“长方体无限多”的条件而已。首先解决第一个:长和宽都要严格小于前面的。这还用解决吗……if里面多加一个条件就好了。或原创 2017-07-17 15:54:19 · 678 阅读 · 0 评论