随笔分类 - 动态规划—背包型
摘要:题意 "链接" Sol 可以用生成函数做,也可以用组合数做。 生成函数就是无脑算一下阶乘暴力背包,然后最后再乘上$M$的阶乘 组合数的方法就是用类似背包的转移,转移的时候考虑当前放的这几个的方案数即可 cpp include using namespace std; const int MAXN =
阅读全文
摘要:题意 "题目链接" Sol 后缀自动机+线段树 还是考虑通过每个前缀的后缀更新答案,首先出现次数只有一次,说明只有$right$集合大小为$1$的状态能对答案产生影响 设其结束位置为$t$,代表的最短/最长后缀的位置为$l, r$(l在r的右边) 那么对于区间$r l$内的$x$位置,可以用$t x
阅读全文
摘要:题意 "题目链接" Sol 很显然的dp,设$f[i][j]$表示第$i$个位置,高度为$j$的最小步数 向上转移的时候是完全背包 向下转移判断一下就可以 cpp include define Fin(x) {freopen(x, "r", stdin);} define chmin(a, b) (
阅读全文
摘要:题意 "题目链接" Sol 多年以后,我终于把这题的暴力打出来了qwq 好感动啊。。 刚开始的时候想的是: 设$f[i][j]$表示第$i$轮, 第$j$个人血量的期望值 转移的时候若要淦这个人,那么$f[i][j] = (f[i 1][j] + 1) p + (f[i 1][j]) (1 p)$
阅读全文
摘要:题意 "题目链接" Sol 不会做啊AAA。。 暴力上肯定是不行的,考虑根号分组 设$m = \sqrt{n}$ 对于前$m$个直接暴力,利用单调队列优化多重背包的思想,按$\% i$分组一下。复杂度$O(n\sqrt{n})$ 对于后$m$个,此时每个物品没有个数的限制,换一种dp方法 设$g[i
阅读全文
摘要:题意 ~~[题目链接]~~这怎么发链接啊。。。。。 有$n$张符卡排成一个队列,每张符卡有两个属性,等级$li$和伤害$di$。 你可以做任意次操作,每次操作为以下二者之一: 把队首的符卡移动到队尾。 使用队首的符卡,对敌人造成$d_i$点伤害,并丢弃队首的$l_i$张符卡(包括你所使用的符卡)。如
阅读全文
摘要:题意 "题目链接" Sol 比较套路吧,设$f[i][j]$表示以$i$为根的子树中选了$j$个黑点对答案的贡献 然后考虑每条边的贡献,边的两边的答案都是可以算出来的 转移的时候背包一下。 cpp include define Pair pair define fi first define se
阅读全文
摘要:题意 "题目链接" Sol 树形依赖背包板子题 树形依赖背包大概就是说:对于一个点,只有选了它的父亲才能选自身 把dfs序建出来,倒过来考虑 设$f[i][j]$表示从第$i$个节点往后背包体积为$j$的最大价值 转移的时候,只有选了该点才能从子树中转移而来 $f[i][j] = max(f[i +
阅读全文
摘要:题意 ftiasch 有 N 个物品, 体积分别是 W1, W2, ..., WN。 由于她的疏忽, 第 i 个物品丢失了。 “要使用剩下的 N - 1 物品装满容积为 x 的背包,有几种方法呢?” -- 这是经典的问题了。她把答案记为 Count(i, x) ,想要得到所有1 <= i <= N,
阅读全文
摘要:题目描述 Farmer John has gone to town to buy some farm supplies. Being a very efficient man, he always pays for his goods in such a way that the smallest
阅读全文
摘要:Description 某加工厂有A、B两台机器,来加工的产品可以由其中任何一台机器完成,或者两台机器共同完成。由于受到机器性能和产品特性的限制,不同的机器加工同一产品所需的时间会不同,若同时由两台机器共同进行加工,所完成任务又会不同。某一天,加工厂接到n个产品加工的任务,每个任务的工作量不尽一样。
阅读全文
摘要:Description JSOI信息学代表队一共有N名候选人,这些候选人从1到N编号。方便起见,JYY的编号是0号。每个候选人都由一位 编号比他小的候选人Ri推荐。如果Ri=0则说明这个候选人是JYY自己看上的。为了保证团队的和谐,JYY需要保证, 如果招募了候选人i,那么候选人Ri"也一定需要在团
阅读全文
摘要:题目描述 硬币购物一共有4种硬币。面值分别为c1,c2,c3,c4。某人去商店买东西,去了tot次。每次带di枚ci硬币,买si的价值的东西。请问每次有多少种付款方法。 输入输出格式 输入格式: 第一行 c1,c2,c3,c4,tot 下面tot行 d1,d2,d3,d4,s 输出格式: 每次的方法
阅读全文
摘要:题目描述 四方定理是众所周知的:任意一个正整数nn ,可以分解为不超过四个整数的平方和。例如:25=1^{2}+2^{2}+2^{2}+4^{2}25=12+22+22+42 ,当然还有其他的分解方案,25=4^{2}+3^{2}25=42+32 和25=5^{2}25=52 。给定的正整数nn ,
阅读全文
摘要:题目描述 Farmer John suffered a terrible loss when giant Australian cockroaches ate the entirety of his hay inventory, leaving him with nothing to feed th
阅读全文
摘要:题目描述 多米诺骨牌有上下2个方块组成,每个方块中有1~6个点。现有排成行的 上方块中点数之和记为S1,下方块中点数之和记为S2,它们的差为|S1-S2|。例如在图8-1中,S1=6+1+1+1=9,S2=1+5+3+2=11,|S1-S2|=2。每个多米诺骨牌可以旋转180°,使得上下两个方块互换
阅读全文
摘要:题目描述 选取和不超过S的若干个不同的正整数,使得所有数的约数(不含它本身)之和最大。 输入输出格式 输入格式: 输入一个正整数S。 输出格式: 输出最大的约数之和。 输入输出样例 输入样例#1: 复制 11 输出样例#1: 复制 9 输入样例#1: 复制 11 输出样例#1: 复制 9 说明 样例
阅读全文
摘要:题目描述 一个吉他手准备参加一场演出。他不喜欢在演出时始终使用同一个音量,所以他决定每一首歌之前他都需要改变一次音量。在演出开始之前,他已经做好一个列表,里面写着每首歌开始之前他想要改变的音量是多少。每一次改变音量,他可以选择调高也可以调低。 音量用一个整数描述。输入文件中整数beginLevel,
阅读全文
摘要:题目描述 After Farmer Don took up Frisbee, Farmer John wanted to join in the fun. He wants to form a Frisbee team from his N cows (1 <= N <= 2,000) conven
阅读全文
摘要:题目描述 终于,破解了千年的难题。小FF找到了王室的宝物室,里面堆满了无数价值连城的宝物……这下小FF可发财了,嘎嘎。但是这里的宝物实在是太多了,小FF的采集车似乎装不下那么多宝物。看来小FF只能含泪舍弃其中的一部分宝物了……小FF对洞穴里的宝物进行了整理,他发现每样宝物都有一件或者多件。他粗略估算
阅读全文