![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
文章平均质量分 61
1035719430
浙江弱校弱选手
展开
-
codeforces 567F Mausoleum (dp)
linklinklink:添加链接描述用 fl,rf_{l,r}fl,r 表示左右分别放到 l、rl、rl、r 的位置每次转移的时候考虑一下限制就行了。如果用 fi,jf_{i,j}fi,j 表示用了前 iii 个数字放到第 jjj 也等价,可以用 i,ji,ji,j 推出 l,rl,rl,r 细节很多的一道题#include <bits/stdc++.h>using namespace std;#define rep(i,j,k) for(int i = j;i <= k原创 2021-09-30 13:20:15 · 183 阅读 · 0 评论 -
codeforces 500F New Year Shopping(dp)
linklinklink:添加链接描述显然考的是0/1背包重复运算很浪费时间 就可以考虑分组去优化运算为了方便说明/分组 我们把持续时间移到我们访问的时间 也就是一个物品变成一个时间点 把我们去的时间变成一段那么本来 tit_iti 时刻去 会转化成 [ti−p+1,ti][t_i-p+1,t_i][ti−p+1,ti]我们考虑如何分组减少背包的次数很显然我们先对物品和时间都进行排序那么我们取 T=1,p+1,2p+1....T=1,p+1,2p+1....T=1,原创 2021-09-29 15:28:19 · 183 阅读 · 0 评论 -
codeforces 486E. LIS of Sequence
linklinklink:添加链接描述问题在于如何区别type2,3type2,3type2,3考虑我们如何确定一个元素是否属于最长包含iii的前缀最长为fif_ifi 后缀为 gig_igi那么当且仅当 fi+gi=res+1f_i+g_i=res+1fi+gi=res+1考虑如果一个元素不在所有的元素里那么删除了他之后答案不变 也就仍然存在…我们考虑一个不包含 iii 的同长序列发现第 fif_ifi 个元素的 f、gf、gf、g 值相同讨论一下发现充要 mapm原创 2021-09-29 09:53:33 · 167 阅读 · 0 评论 -
正睿2019省选十连测day3T3(笛卡尔树,dp)
题面描述有一个11到nn的排列p1,p2,p3,…,pn,你会对它进行若干轮操作,每一轮操作,你会保留序列中极大的数,也就是说对于每个数字,如果它比相邻的数字都大,那么会被保留下来。比如一个排列(3,2,5,1,4,6),经过一轮操作之后序列变成(3,5,6),第二轮操作之后序列变成(6),经过恰好2轮之后序列里只有一个元素。请问有多少个长度为n的序列,经过恰好k次操作之后,序列里只有一个元...原创 2018-12-18 15:39:55 · 362 阅读 · 0 评论 -
bzoj3622(dp,广义容斥原理)
题面全是图片https://www.lydsy.com/JudgeOnline/problem.php?id=3622solutionsolutionsolution题目等价于求∑[ai&gt;bi]−[bi&gt;ai]=k\sum[a_i&gt;b_i]-[b_i&gt;a_i]=k∑[ai>bi]−[bi>ai]=k的方案数恰好k...原创 2018-12-11 15:05:04 · 350 阅读 · 0 评论 -
正睿2018省选联测round8t1(dp)
【问题描述】针⽼师和⼩ C 在玩传统的取⽯⼦游戏,他们有 n 堆⽯⼦,第 i 堆⽯⼦有 ai 个,两个⼈轮流操作,每次操作需要选择⼀堆⾮空的⽯⼦,然后取⾛这堆⽯⼦⾥⾄少 1 颗⽯⼦,不能操作的⼈输,⼩ C 先⼿现在针⽼师得到了⼀次作弊的机会:在游戏开始之前他可以动⽤膜法删除某 k 堆⽯⼦,要求 k 是 d 的倍数,且 0 ≤ k < n。针⽼师想知道,他有多少种作弊的⽅案,使得作...原创 2018-12-26 16:12:16 · 450 阅读 · 0 评论 -
正睿省选模拟赛:两弹一星(组合数学,斯特林数,dp)
题目大意:对于一个无向图GGG,假设GGG中有xxx个联通块为树,那么GGG的权值就为xkx^kxk(kkk给定)给定n,kn,kn,k求nnn个点的所有无向图的权值之和对998244353998244353998244353取模n≤3∗104,k≤20n\le 3*10^4,k\le 20n≤3∗104,k≤20solutionsolutionsolution:考虑一个n3n^3n...原创 2018-12-13 21:33:11 · 445 阅读 · 0 评论 -
codeforces#525 E Ehab and a component choosing problem(贪心,dp)
传送门:http://codeforces.com/contest/1088/problem/Esolutionsolutionsolution:比较套路的贪心题考虑我们选了xxx个权值和两两不同的联通块,第iii个联通块的大小为bib_ibi可得max(b1,b2,b3...bx)&gt;avarge(b1,b2,b3...bx)max(b_1,b_2,b_3...b_x)&...原创 2018-12-05 14:57:07 · 166 阅读 · 0 评论 -
LOJ2542「PKUWC2018」随机游走(min-max容斥,高斯消元,树上)
传送门:https://loj.ac/problem/2542$$原创 2018-11-28 15:30:42 · 239 阅读 · 0 评论 -
LOJ2540 「PKUWC2018」随机算法(状态压缩)
传送门:https://loj.ac/problem/2540solutionsolutionsolution:直接状压dpdpdp做fs,if_{s,i}fs,i表示独立集的状态为sss,考虑到排列的第iii位枚举下一位转移考虑下一位可以填什么考虑现在可以加入独立集的点,之前肯定没考虑过,直接转移到fs∪x,i+1f_{s∪{x},i+1}fs∪x,i+1不可以加入独立集的点...原创 2018-11-28 15:03:56 · 143 阅读 · 0 评论 -
atcoderAGC001 E
E - BBQ HardTime limit : 2sec / Memory limit : 256MBScore : 1400 pointsProblem StatementSnuke is having another barbeque party.This time, he will make one serving of Skewer Meal.He has a stock ...原创 2018-11-26 14:17:23 · 159 阅读 · 0 评论 -
九校联考DAT2T1(dp,线性求逆元)
题目描述“欢迎啊,老朋友。”一阵寒暄过后,厂长带他们参观了厂子四周,并给他们讲锻造的流程。“我们这里的武器分成若干的等级,等级越高武器就越厉害,并且对每一等级的武器都有两种属性值 b 和 c,但是我们初始只能花 a 个金币来生产 1 把 0 级剑……”“所以你们厂子怎么这么垃圾啊,不能一下子就造出来 999 级的武器吗?”勇者不耐烦的打断了厂长的话。“别着急,还没开始讲锻造呢…...原创 2018-09-11 10:42:10 · 254 阅读 · 0 评论 -
九校联考DAY1T3(dp,矩阵快速幂,十进制快速幂)
题目描述金企鹅同学非常擅长用 1 X 2 的多米诺骨牌覆盖棋盘的题。有一天,正在背四六级单词的他忽然想:既然两个格子的积木叫“多米诺 (domino)”,那么三个格子的的积木一定叫“三米诺 (tromino)”了!用三米诺覆盖棋盘的题怎么做呢?用三米诺覆盖 3 X n 的矩形棋盘,共多少种方案?三米诺可旋转;两种方案不同当且仅当这两种图案直接覆盖在一起无法重叠。例如 n = 2 时,共...原创 2018-09-11 10:29:06 · 407 阅读 · 0 评论 -
九校联考DAY1T2(dp,换根与二次扫描法)
题目描述银企鹅非常擅长化学。有一天他在试图命名一个巨大的单烯烃分子的时候,想到了一个问题。给你一棵树,一些边有标记,对于每条有标记的边,在树中找到包含这条边的一条最长链,并输出长度。输入格式第一行一个整数 id 表示测试点的编号。多组数据,第二行一个整数 T 表示数据组数。对于每组数据,第一行两个整数 n, m 表示节点的个数,和被标记的边的个数。我们规定 1 是根...原创 2018-09-11 10:25:49 · 373 阅读 · 0 评论 -
codefoces 1110 H:Modest Substrings(AC自动机,动态规划)
You are given two integers l and r.Let’s call an integer x modest, if l≤x≤r.Find a string of length n, consisting of digits, which has the largest possible number of substrings, which make a modest ...原创 2019-03-04 14:07:11 · 450 阅读 · 0 评论 -
codeforces662C. Binary Table(快速沃尔什变换,动态规划)
传送门:http://codeforces.com/contest/662/problem/C做法一:f[i][j]f[i][j]f[i][j] 表示对行选取 jjj 的状态,有 iii 个 111 的列的数量按照顺序枚举选取的行进行转移保证不重不漏O(2nn2)O(2^nn^2)O(2nn2)做法二:记 fif_ifi 表示选取行状态为 iii 的方案aia_iai 表示状态...原创 2019-03-02 16:33:44 · 195 阅读 · 0 评论 -
FZOJ195. 「2019冬令营提高组」树(树的同构,树hash,状压dp,动态规划)
题目大意:给出一颗 nnn 个节点的树 AAA 和一颗 mmm 个节点的树 BBB ,求 AAA 有多少个不同的连通子图与 BBB 同构,答案对 109+710^9+7109+7 取模我们定义两个图同构当且仅当存在一个节点的对应方案使得每个图中的每个节点恰好与另一个图中的某个节点相对应,且如果在一个图中两个节点之间有连边,它们在另一个图中对应的两个节点之间也有连边。n≤2000,m≤12n\...原创 2019-02-22 14:46:41 · 417 阅读 · 0 评论 -
FZOJ186. 「2019冬令营提高组」简单题(动态规划)
题目大意:有一个3×n3×n3×n的棋盘,你在上面玩游戏。开始时,棋盘有一些格子上已经摆上了棋子,剩下的格子都是空的。每次你可以选择一个空的格子摆上棋子,这个格子必须满足以下两个条件之一:①这个格子上下两格都有棋子;②这个格子左右两格都有棋子。你想知道有多少种不同的摆满棋盘的摆放顺序。n≤2000n\le 2000n≤2000显然如果四个角落有空肯定不合法,第一排和第三排有连续的空不...原创 2019-02-21 19:10:13 · 307 阅读 · 0 评论 -
CodeCraft-19 and Codeforces Round #537 E(虚树dp)
传送门:https://codeforces.com/contest/1111/problem/E题目大意:给定一棵 nnn 个点的树和 qqq 个询问每个询问包括三个参数 : k,m,rk,m,rk,m,r 和 kkk 个点问把这 kkk 个点分成不超过 mmm 组,满足以 rrr 为根的条件下同组内的点没有一个点是另一个店的祖先 的分组方案数对109+710^9+7109+7取模数...原创 2019-02-07 15:03:23 · 280 阅读 · 0 评论 -
hdu4624 Endless Spin(min-max容斥,dp)
Problem DescriptionI spin it again and again,and throw it away finally.So now I have a row of n ball,named from 1 to n,each ball is white initially.At each step I randomly chose a interval [l, r] ...原创 2019-01-28 16:10:20 · 216 阅读 · 0 评论 -
OIcamp 2016 day2 路径数(动态规划,矩阵乘法优化dp,组合计数,推式子)
F(n)=∏i=1⌊na⌋(qai−1)∗∏a∤in(qi−1)∏a∤in(qi−1)=(∏i=1a−1(qi−1))⌊na⌋∗(∑i=1nmod&amp;ThinSpace;&amp;ThinSpace;a(qi−1))F(n)=\prod_{i=1}^{\lfloor\frac{n}{a}\rfloor}(q^{ai}-1)*\prod_{a\nmid i}^n(q^i-1)\\\prod...原创 2019-01-26 14:27:12 · 371 阅读 · 0 评论 -
The 2018 ICPC Asia-East Continent Final E(dp)
可以发现两个串合法的充要条件:令P=−1,V=1P=-1,V = 1P=−1,V=1,条件是两个串的最小前缀和之和≥−1\ge-1≥−1注:这里最小前缀和只能是以PPP结尾,或者整个串没有PPP最小前缀和取到整个串的时候比较特殊然后就得到了一个显然的做法f[i][j][k]f[i][j][k]f[i][j][k]表示考虑串的前iii位,当前前缀和为jjj,最小前缀和为kkk的方案数直接...原创 2018-12-29 18:50:19 · 603 阅读 · 0 评论 -
九校联考DAY1T1(dp,完全背包)
题目描述 铜企鹅是企鹅餐馆的老板,他正在计划如何使得自己本年度收益增加。 共有 nnn 种食材,一份食材 iii 需要花 titit_i 小时不间断地进行播种,施肥, 直至收获。当然,一份食材 iii 是可以直接卖掉得到 wiwiw_i 块钱的。 招牌菜共有 mmm 种,一份招牌菜 iii 需要消耗一定的食材,花 TiTiT_i 小时不间断地来烹饪,叫卖,并最终卖出得到...原创 2018-09-11 10:21:42 · 251 阅读 · 0 评论 -
TYVJ1051(dp)
描述 学校实行学分制。每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分。学校开设了 N(N≤300) 门的选修课程,每个学生可选课程的数量 M 是给定的。学生选修了这 M 门课并考核通过就能获得相应的学分。 在选修课程中,有些课程可以直接选修,有些课程需要一定的基础知识,必须在选了其他的一些课程的基础上才能选修。例如《Windows程序设计》必须在选修了《Window...原创 2018-09-06 10:52:53 · 260 阅读 · 0 评论 -
TYVJ1052/CODEVS1380(dp)
描述 Ural大学有N名职员,编号为1~N。他们的关系就像一棵以校长为根的树,父节点就是子节点的直接上司。每个职员有一个快乐指数,用整数 H_i 给出,其中 1≤i≤N。现在要召开一场周年庆宴会,不过,没有职员愿意和直接上司一起参会。在满足这个条件的前提下,主办方希望邀请一部分职员参会,使得所有参会职员的快乐指数总和最大,求这个最大值。 输入格式 第一行一个整数N。(1...原创 2018-09-06 10:51:35 · 121 阅读 · 0 评论 -
POJ3666(dp)
Description A straight dirt road connects two fields on FJ’s farm, but it changes elevation more than FJ would like. His cows do not mind climbing up or down a single slope, but they are not fon...原创 2018-09-01 09:20:04 · 308 阅读 · 0 评论 -
TYVJ1071(dp,LCS,LIS)
Description 熊大妈的奶牛在小沐沐的熏陶下开始研究信息题目。小沐沐先让奶牛研究了最长上升子序列,再让他们研究了最长公共子序列,现在又让他们要研究最长公共上升子序列了。 小沐沐说,对于两个串A,B,如果它们都包含一段位置不一定连续的数字,且数字是严格递增的,那么称这一段数字是两个串的公共上升子串,而所有的公共上升子串中最长的就是最长公共上升子串了。 奶牛半懂不懂,小...原创 2018-09-01 08:25:12 · 114 阅读 · 0 评论 -
POJ2279(dp)
题目描述 杨先生希望为他的班级拍照。学生将排成一排,每行不超过它后面的行,行的左端对齐。例如,12名学生可以排成5,3,3和1名学生的行(从后到前)。 XXXXX XXX XXX X. 此外,杨先生希望每排学生安排高度从左到右减少。此外,学生的身高应该从后面降到前面。考虑到这一点,杨先生认为,对于12个学生的例子,至少有两种方式来安排学生(1个作为最高等): 1...原创 2018-09-01 08:20:06 · 866 阅读 · 0 评论 -
8.25正睿十连测DAY1T3(区间dp)
看上去好像一脸不可做。 稍微想一下就能发现是区间dpdpdp 用dpi,jdpi,jdp_{i,j}表示区间[i,j][i,j][i,j]是否合法 这里合法的定义为,要么可以按照题意直接由一个母串多次插入而来 要么删掉一些母串之后剩余部分正好是原串的前缀那么我们只要枚举可能的母串即可 母串必须满足条件len母|len总len母|len总len_{母} | len_{总} 且∀(c=...原创 2018-08-31 15:11:50 · 183 阅读 · 0 评论 -
2018.8.19T3(动态规划,矩阵快速幂)
题目大意: 一张n个点m条边的无向图,边有边权w,从S出发,到T,每个时间店能走一步,求K时间点恰好到T所经过的边权的最小值。 同时有a个怪物 每个怪物有自己的游走路径,按照顺序在这些点直接游走,也是一个时间点移动一步。每个怪物游走的点个数2<=T<=4 求不碰到怪物的情况下,第一问的值 如果不可能输出impossible C组数据 数据范围 k这么大一脸矩阵快...原创 2018-08-21 08:33:40 · 188 阅读 · 0 评论 -
Codeforces Round #505 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Final) D(动态规划)
Dima the hamster enjoys nibbling different things: cages, sticks, bad problemsetters and even trees!Recently he found a binary search tree and instinctively nibbled all of its edges, hence messing u...原创 2018-08-20 11:18:53 · 263 阅读 · 0 评论 -
bzoj1009(kmp,dp,矩阵乘法,快速幂)
Description 阿申准备报名参加GT考试,准考证号为N位数X1X2….Xn(0<=Xi<=9),他不希望准考证号上出现不吉利的数字。 他的不吉利数学A1A2…Am(0<=Ai<=9)有M位,不出现是指X1X2…Xn中没有恰好一段等于A1A2…Am. A1和X1可以为 0Input 第一行输入N,M,K.接下来一行输入M位的数。 N<=10^...原创 2018-08-22 09:32:28 · 213 阅读 · 0 评论 -
2018.8.12T1(树形dp)
描述 最近在训练的时候,可怜看到了这样的一个题:给出一颗 n 个点的有根树,最开始有一个棋子放在根节点。两个人交替移动棋子:如果当前棋子处在一个叶子节点上,那么游戏立刻结束;否则当前玩家需要选择当前节点的一个孩子,然后把棋子移动到这个孩子上。游戏的得分是棋子最终所在节点的深度(根节点深度为 1)。先手想要最大化这个得分,后手想要最小化这个得分。如果两个人都以最优策略行动,那么最终游戏的得...原创 2018-08-15 09:02:36 · 357 阅读 · 2 评论 -
2018.8.9T1(状压DP)
描述 作为一场自闭模拟赛,需要一道10k模拟加玄学剪枝题。在魔塔这个游戏中,勇士有四个数值,血量,攻击,防御和魔防。怪物也有三个数值,血量,攻击和防御。勇士和怪物攻击方式一般是这样的,双方轮流攻击,每回合造成自己攻击减去对方防御的伤害,如果自己的攻击比对方的防御低,那么无法对对方造成伤害。如果怪物血量变得小于等于0,那么怪物死亡,勇士获胜。如果勇士的攻击不超过怪物的防御,那么无法战斗。在一场...原创 2018-08-15 07:02:41 · 212 阅读 · 0 评论 -
2018.7.31动态规划(吴瑾昭)(不完整)
动态规划本质类似背包的dp题目T1:简单题fi,j,kfi,j,kf_i,j,k动态规划本质类似背包的dp题目T1:简单题fi,j,kfi,j,kf_i,j,k 到第i个数,选j个,和未kT2:SRM625先dp完人(连通块)再插空格 fi,jfi,jf_i,j表示前i个人有j个连通块的方案数 新来一个人,可以产生一个新连通块,也可以...原创 2018-08-01 23:09:31 · 355 阅读 · 0 评论 -
2018.8.6T1(dp)
描述 (为什么老师要放炉石的图 题目大意: 你有一个可重集合A,A中的元素是正整数,当一个元素变为0时从集合中删除。 你可以花费p使一个元素+1,花费q使一个元素−1。 你有一次机会花费r使得集合中所有元素−1,若有元素因此被删除,则重复这个操作(不需要额外的花费)。 你的目标是最小化将集合变为空集的花费。 输入格式 第一行一个整数n表示场面上有n个随从。接下来一行n个数,第ii个数a...原创 2018-08-06 19:49:09 · 149 阅读 · 0 评论 -
Codeforces Round #501 (Div. 3) F(动态规划)
大致题意: 给定一个数nnn与一个字符串sss 问有多少个长度为2n2n2n的字符串包含sss 对109+7109+710^9+7取模 n&amp;lt;=100,|s|&amp;lt;=200n&amp;lt;=100,|s|&amp;lt;=200ngankgankgank了我 我以为是包含一个子序列 可以不连续,磕不出来 连续子串就好做了 fi,j,k,lfi,j,k,lf_{i,j,k,l}表示已经放了ii...原创 2018-08-01 22:52:42 · 182 阅读 · 0 评论 -
TYVJ1061(dp)
Description 一个公司有三个移动服务员。如果某个地方有一个请求,某个员工必须赶到那个地方去(那个地方没有其他员工),某一时刻只有一个员工能移动。被请求后,他才能移动,不允许在同样的位置出现两个员工。从p到q移动一个员工,需要花费c(p,q)。这个函数没有必要对称,但是c(p,p)=0。公司必须满足所有的请求。目标是最小化公司花费。 Input Format 第一行...原创 2018-09-01 10:09:43 · 209 阅读 · 0 评论 -
CODEVS1169(noip2008传纸条)(dp)
Description 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,小渊坐在矩阵的左上角,坐标(1,1),小轩坐在矩阵的右下角,坐标(m,n)。从小渊传到小轩的纸条只可以向下或者...原创 2018-09-01 11:10:45 · 147 阅读 · 0 评论 -
2018.8.24T2(dp)
题目大意: 两个人轮流取一个序列的值,每次只能从上次选取的数后面的mmm个里面选做法是一个dp,每次从前面的最大值里面取#include<bits/stdc++.h>using namespace std;#define rep(i,j,k) for(int i = j;i <= k;++i)#define repp(i,j,k) for(int i = ...原创 2018-08-25 15:06:12 · 136 阅读 · 0 评论