随笔分类 -  DP

摘要:description analysis 首先有一个结论,对于$[1,i]$区间划分最后一段的和尽量小,答案会更优,具体证明参考毛爷爷的博客 设$f[i]$为满足$[1,i]$划分最优时、$(f[i],i]$这段和最小时的最右的端点,最优划分即为从$n$开始向$f$不断统计 由后一段比前一段大可知$ 阅读全文
posted @ 2019-12-16 22:00 路人黑的纸巾 阅读(215) 评论(0) 推荐(0)
摘要:description analysis 首先可以知道不符合要求的食材仅有一个,于是可以容斥拿总方案数减去选不合法食材的不合法方案数 枚举选取哪一个不合法食材,设$f[i][j]$表示到第$i$种烹饪方法、操作权值为$j$的方案数 给每一个操作赋权值,选当前行合法食材列为$0$,不选当前行为$1$, 阅读全文
posted @ 2019-12-16 21:32 路人黑的纸巾 阅读(148) 评论(0) 推荐(0)
摘要:description 在这个游戏中,JYY一共有两种攻击方式,一种是普通攻击,一种是法术攻击。两种攻击方式都会消耗JYY一些体力。采用普通攻击进攻怪兽并不能把怪兽彻底杀死,怪兽的尸体可以变出其他一些新的怪兽,注意一个怪兽可能经过若干次普通攻击后变回一个或更多同样的怪兽;而采用法术攻击则可以彻底将一 阅读全文
posted @ 2019-12-14 15:32 路人黑的纸巾 阅读(108) 评论(0) 推荐(0)
摘要:description FJ有M个牛棚,编号1至M,刚开始所有牛棚都是空的。FJ有N头牛,编号1至N,这N头牛按照编号从小到大依次排队走进牛棚,每一天只有一头奶牛走进牛棚。第i头奶牛选择走进第p[i]个牛棚。由于奶牛是群体动物,所以每当一头奶牛x进入牛棚y之后,牛棚y里的所有奶牛们都会喊一声“欢迎欢 阅读全文
posted @ 2019-12-10 16:42 路人黑的纸巾 阅读(106) 评论(0) 推荐(0)
摘要:description 一次考试共有n个人参加,第i个人说:“有ai个人分数比我高,bi个人分数比我低。”问最少有几个人没有说真话(可能有相同的分数) analysis 这题转化模型很妙,容易知道最少没有说真话的数量$=n $说真话最多的数量 对于$a_i$个比$i$大、$b_i$个比$i$小,可以 阅读全文
posted @ 2019-09-28 14:54 路人黑的纸巾 阅读(126) 评论(0) 推荐(0)
摘要:description 大神 wyp 开了家工厂,工厂有 n 个工人和 p 条流水线。 工厂的工人都是睡神,因此第 i 个工人只会在 si 至 ti 时刻才会工作。 每个工人都会被分派到一条流水线上,然而,一条流水线只会在这条线的工人到齐 时才能开工,其余时间即使有部分工人到了也只能休息。 根据大神 阅读全文
posted @ 2019-09-26 22:19 路人黑的纸巾 阅读(286) 评论(0) 推荐(0)
摘要:description 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程。在可以选择的课程中,有2n节课程安排在n个时间段上。在第i(1≤i≤n)个时间段上,两节内容相同的课程同时在不同的地点进行,其中,牛牛预先被安排在教室ci上课,而另一节课程在教室di进行。在不提交任何 阅读全文
posted @ 2019-09-22 08:24 路人黑的纸巾 阅读(168) 评论(0) 推荐(0)
摘要:description analysis 对于$n=0$的点,直接模拟就好了 状压$DP$,设$f[i][j][S]$表示到第$i$题、连续$GG$了$j$题、喝的饮料集合为$S$的最大答案 由于一题可以喝多瓶饮料所以转移需要枚举$S$的子集$SS$来转移 然后转移比较显然但是细节恶心 ~~我不会告 阅读全文
posted @ 2019-09-17 17:47 路人黑的纸巾 阅读(221) 评论(0) 推荐(0)
摘要:description 在N行M列的棋盘上,放若干个炮可以是0个,使得没有任何一个炮可以攻击另一个炮。请问有多少种放置方法?中国象棋中炮的行走方式大家应该很清楚吧. analysis $DP$,容易知道每行至多有两个炮,否则会互相打到 设$f[i][j][k]$表示到放到第$i$行,有$j$列放了一 阅读全文
posted @ 2019-09-17 17:42 路人黑的纸巾 阅读(123) 评论(0) 推荐(0)
摘要:description analysis 很妙的$DP$ 设$f[i][j]$表示已经放了$i$个叶子节点、根到当前节点走了$j$步向左的方案数 考虑调整$DP$方式,钦定伸出左儿子可以直接转移,伸出右儿子必须由没有右儿子的父亲转移 如果伸出左儿子,叶子节点数不变,而步数$+1$,所以$f[i][j 阅读全文
posted @ 2019-09-13 17:04 路人黑的纸巾 阅读(119) 评论(0) 推荐(0)
摘要:description analysis 有没有想起【$NOIP2018$】保卫王国? 设$tr[t][x][y]$表示线段树上的$t$节点代表的区间,从最左边列的$x$行到最右边列$y$行的最小距离 当区间长度为$1$时预处理很简单,注意向上走和向下走 合并两个区间$2t,2t+1$成$t$时,枚 阅读全文
posted @ 2019-08-12 15:23 路人黑的纸巾 阅读(211) 评论(0) 推荐(0)
摘要:description analysis 区间$DP$,首先按照键值排个序,这样保证树的中序遍历就为原序列 设$f[0][i][j]$表示$[i..j]$区间作为$[unknown..i 1]$的 右儿子 的最大和,$f[1][i][j]$就是$[i..j]$区间作为$[j+1..unknown]$ 阅读全文
posted @ 2019-08-09 21:32 路人黑的纸巾 阅读(287) 评论(0) 推荐(0)
摘要:description analysis 首先看一下$p=1$,即$1$以后的合成一定成功的情况 如果按照求期望值的一般做法求两把$0$合成$1$的期望,会画出一棵无穷大的树 这个的期望值就是$$a+\sum^{∞}_{i=1}ap(1 p)^{i 1}$$ 通过数列知识或者打表找规律可以知道这个值 阅读全文
posted @ 2019-08-05 12:15 路人黑的纸巾 阅读(256) 评论(0) 推荐(0)
摘要:description 求有多少种长度为 n 的序列 A,满足以下条件: (1)1 ~ n 这 n 个数在序列中各出现了一次 (2)若第 i 个数 A[i] 的值为 i,则称 i 是稳定的。序列恰好有 m 个数是稳定的 满足条件的序列可能很多,序列数对 10^9+7 取模。 analysis 首先$ 阅读全文
posted @ 2019-08-03 16:32 路人黑的纸巾 阅读(114) 评论(0) 推荐(0)
摘要:description 偶然间,chnlich 发现了他小时候玩过的一个游戏“魂斗罗”,于是决定怀旧。但是这是一个奇怪的魂斗罗 MOD。 有 N 个关卡,初始有 Q 条命。 每通过一个关卡,会得到 u 分和1条命,生命上限为 Q。其中 u=min(最近一次连续通过的关数,R)。 若没有通过这个关卡, 阅读全文
posted @ 2019-08-03 09:10 路人黑的纸巾 阅读(185) 评论(0) 推荐(0)
摘要:description 赫克托是一个魁梧的粉刷匠,而且非常喜欢思考= = 现在,神庙里有N根排列成一直线的石柱,从1到N标号,长老要求用油漆将这些石柱重新粉刷一遍。赫克托有K桶颜色各不相同的油漆,第i桶油漆恰好可以粉刷Ci根石柱,并且,C1+C2+C3…CK=N(即粉刷N根石柱正好用完所有的油漆)。 阅读全文
posted @ 2019-08-01 22:12 路人黑的纸巾 阅读(181) 评论(0) 推荐(0)
摘要:description analysis 比较麻烦树形$DP$ 不过这个我还是不算很懂…… 下次要注意思考,不要怕麻烦 code cpp pragma GCC optimize("O3") pragma G++ optimize("O3") include include include inclu 阅读全文
posted @ 2019-07-10 22:16 路人黑的纸巾 阅读(91) 评论(0) 推荐(0)
摘要:description 除去对铁质盔甲强烈的热爱,Brunhilda是一个正常的7岁女孩。近期,她正在策划一个完美的生日派对。她发明了如下的一个游戏:所有的孩子在一个数k被宣读之前不停地跑来跑去。当这个数字k宣读后,所有的孩子将形成人数恰好为k的若干群体,且保证剩余的孩子数目小于k。最后,这不足k个 阅读全文
posted @ 2019-07-08 21:02 路人黑的纸巾 阅读(110) 评论(0) 推荐(0)
摘要:description 刚刚解决完电力网络的问题, 阿狸又被领导的任务给难住了. 刚才说过, 阿狸的国家有n 个城市, 现在国家需要在某些城市对之间建立一些贸易路线, 使得整个国家的任意两个城市都直接或间接的连通. 为了省钱, 每两个城市之间最多只能有一条直接的贸易路径. 对于两个建立路线的方案, 阅读全文
posted @ 2019-07-05 22:11 路人黑的纸巾 阅读(191) 评论(0) 推荐(0)
摘要:description 如果一个字符串从后往前读与从前往后读一致,我们则称之为回文字符串。当一个数字不包含长度大于1的子回文数字时称为非回文数字。例如,16276是非回文数字,但17276不是,因为它包含回文数字727。 你的任务是在一个给定的范围内计算非回文数字的总数。 analysis 平生最怂 阅读全文
posted @ 2019-07-04 20:34 路人黑的纸巾 阅读(235) 评论(0) 推荐(0)