
动态规划
文章平均质量分 93
状态压缩动态规划
狙击美佐
前N线ACMer,对三维视觉、LLM感兴趣。
展开
-
Codeforces Round #721 (Div. 2) E - Partition Game 线段树优化dp
@[TOC](Codeforces Round #721 (Div. 2) E - Partition Game 线段树优化dp)传送门:https://codeforces.com/contest/1527/problem/E当时E题没有时间写,但是20分钟足够了。当时E题没有时间写,但是20分钟足够了。当时E题没有时间写,但是20分钟足够了。题意将一个长为n的序列,分成k段。将一个长为n的序列,分成k段。将一个长为n的序列,分成k段。在每段中,对于每个数字来说,贡献为最后一次出现的位置减第一次原创 2021-05-21 11:52:17 · 215 阅读 · 0 评论 -
CodeForces - 560E Gerald and Giant Chess dp+排列组合
CodeForces - 560E Gerald and Giant Chess dp+排列组合题意思路Code传送门:https://codeforces.com/contest/560/problem/E题意给一个n∗m的棋盘,想要从(1,1)走到(n,m),但是又k个坏点不能经过,问有多少种方案?给一个n*m的棋盘,想要从(1,1)走到(n,m),但是又k个坏点不能经过,问有多少种方案?给一个n∗m的棋盘,想要从(1,1)走到(n,m),但是又k个坏点不能经过,问有多少种方案?思路因为n和m原创 2021-05-07 13:00:45 · 160 阅读 · 0 评论 -
牛客小白月赛28 I-迷宫 二维dp+背包
牛客小白月赛28 I-迷宫 二维dp+背包题意思路Code(384MS)传送门:https://ac.nowcoder.com/acm/contest/16081/I题意有一个n×m的网格地图,每个点有个值aij,现在牛牛要从(1,1)走到(n,m).有一个n×m的网格地图,每个点有个值a_{ij} ,现在牛牛要从(1,1)走到(n,m).有一个n×m的网格地图,每个点有个值aij,现在牛牛要从(1,1)走到(n,m).他可以往右边或者往下走,每次到一个点会获得当前的点权值,并将权值和mod 1原创 2021-05-06 18:50:32 · 198 阅读 · 1 评论 -
Codeforces Global Round 14 E. Phoenix and Computers dp+排列组合
Codeforces Global Round 14 E. Phoenix and Computers dp+排列组合题意思路Code(436MS)传送门:https://codeforces.com/contest/1515/problem/E赛中想了一个多小时,还是处理不了一些细节。赛中想了一个多小时,还是处理不了一些细节。赛中想了一个多小时,还是处理不了一些细节。题意有n个电脑排在一排,你可以手动打开任意电脑,但是有个特点,有n个电脑排在一排,你可以手动打开任意电脑,但是有个特点,有n个电脑排原创 2021-05-03 17:06:12 · 880 阅读 · 6 评论 -
Codeforces 182E - Wooden Fence 多阶段决策dp
Codeforces 182E - Wooden Fence 多阶段决策dp题意思路Code传送门:https://codeforces.com/problemset/problem/182/E题意有n种木板,长为ai,宽为bi,当木板旋转时等于之前,则算一种木板,否则算不同类型。有n种木板,长为a_i,宽为b_i,当木板旋转时等于之前,则算一种木板,否则算不同类型。有n种木板,长为ai,宽为bi,当木板旋转时等于之前,则算一种木板,否则算不同类型。这些木板有无数块,问,能组成多少个长为L的木板原创 2021-04-09 16:28:51 · 154 阅读 · 0 评论 -
Codeforces 358D - Dima and Hares DP
Codeforces 358D - Dima and Hares DP题意思路Code传送门:http://codeforces.com/problemset/problem/358/D题意有n匹马排列在草场上,每只马如何吃草很有讲究。有n匹马排列在草场上,每只马如何吃草很有讲究。有n匹马排列在草场上,每只马如何吃草很有讲究。如果左右的两匹马都没吃,他吃了,价值增加a[i]如果左右的两匹马都没吃,他吃了,价值增加a[i]如果左右的两匹马都没吃,他吃了,价值增加a[i]如果左右的两匹马有一只吃了,原创 2021-04-09 14:17:57 · 199 阅读 · 0 评论 -
Codeforces 148E Porcelain 预处理+双向dp+背包
Codeforces 148E Porcelain 预处理+双向dp+背包题意思路Code传送门:https://codeforces.com/contest/148/problem/E题意有n层货架,每层货架都有ai本书,每本书都有自己的价值。有n层货架,每层货架都有a_i本书,每本书都有自己的价值。有n层货架,每层货架都有ai本书,每本书都有自己的价值。拿书只能在一层的左右拿书,问拿m本书的最大价值。拿书只能在一层的左右拿书,问拿m本书的最大价值。拿书只能在一层的左右拿书,问拿m本书的最大价值原创 2021-04-08 21:44:07 · 143 阅读 · 0 评论 -
Codeforces 1498C Planar Reflections dp
Codeforces 1498C Planar Reflections dp题意思路Code题意有一个粒子,衰变年龄为k,前面有n堵墙,每穿过一堵墙,都会有一个年龄−1的粒子反向前进。有一个粒子,衰变年龄为k,前面有n堵墙,每穿过一堵墙,都会有一个年龄-1的粒子反向前进。有一个粒子,衰变年龄为k,前面有n堵墙,每穿过一堵墙,都会有一个年龄−1的粒子反向前进。当年龄为1时不反向,问有多少穿过1或者n的墙的粒子。当年龄为1时不反向,问有多少穿过1或者n的墙的粒子。当年龄为1时不反向,问有多少穿过1或者n的原创 2021-04-08 19:55:49 · 252 阅读 · 0 评论 -
ZOJ 4019 Schrödinger‘s Knapsack dp
ZOJ 4019 Schrödinger's Knapsack dp题意思路Code传送门:https://zoj.pintia.cn/problem-sets/91827364500/problems/91827370240题意给一个背包,体积为c,有两类物品,第一类有n个,权值为k1,第二类有m个,权值为k2。每个物品都有自己的体积。给一个背包,体积为c,有两类物品,第一类有n个,权值为k1,第二类有m个,权值为k2。每个物品都有自己的体积。给一个背包,体积为c,有两类物品,第一类有n个,权值为k原创 2021-04-08 16:08:34 · 104 阅读 · 0 评论 -
ZOJ 4011 Happy Sequence dp
ZOJ 4011 Happy Sequence dp题意思路Code传送门:https://zoj.pintia.cn/problem-sets/91827364500/problems/91827370222题意给一个n和一个m,表示你可以重复用[1,n]里的数字。给一个n和一个m,表示你可以重复用[1,n]里的数字。给一个n和一个m,表示你可以重复用[1,n]里的数字。构造一个数列,数列中前一个数字必须是后一个数字的因子,即ai∣ai+1。构造一个数列,数列中前一个数字必须是后一个数字的因子,即原创 2021-04-08 15:00:26 · 120 阅读 · 0 评论 -
2018 EC Finals I. Misunderstood … Missing 逆向dp
2018 EC Finals I. Misunderstood … Missing 逆向dp题意思路Code传送门:题意刚开始,有初始值都为0的A(伤害)和D(伤害增量)。刚开始,有初始值都为0的A(伤害)和D(伤害增量)。刚开始,有初始值都为0的A(伤害)和D(伤害增量)。D的含义是,每回合刚开始都可以给A增加D的伤害。D的含义是,每回合刚开始都可以给A增加D的伤害。D的含义是,每回合刚开始都可以给A增加D的伤害。有n个回合,每个回合有3个值a,b,c。有n个回合,每个回合有3个值a,b,c。有原创 2021-04-07 20:28:29 · 122 阅读 · 0 评论 -
第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(昆明)(热身赛) C-Statues
@[TOC](第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(昆明)(热身赛) C-Statues)传送门:https://ac.nowcoder.com/acm/contest/13977/C题意有n个位置,给k个雕像,每个雕像都有一个位置和大小。想要将它放在第i个位置,需花费x∗∣j−i∣。有n个位置,给k个雕像,每个雕像都有一个位置和大小。想要将它放在第i个位置,需花费x*|j-i|。有n个位置,给k个雕像,每个雕像都有一个位置和大小。想要将它放在第i个位置,需花费x∗∣j−i∣。将原创 2021-04-03 13:33:26 · 419 阅读 · 0 评论 -
牛客挑战赛48 B-心跳调试 概率线性DP
牛客挑战赛48 B-心跳调试 概率线性DP题意思路Code传送门:https://ac.nowcoder.com/acm/contest/11161/B题意思路假设栈顶为i,那么下一个入栈的必须是i或者i+1,所以和栈内的状态无关。假设栈顶为i,那么下一个入栈的必须是i或者i+1,所以和栈内的状态无关。假设栈顶为i,那么下一个入栈的必须是i或者i+1,所以和栈内的状态无关。设当前为i,下一个放入i+1而不是更大的数字的概率为p,则设当前为i,下一个放入i+1而不是更大的数字的概率为p,则设当前为原创 2021-03-21 15:40:16 · 289 阅读 · 0 评论 -
Codeforces Round #603 (Div. 2) F. Economic Difficulties DFS+DP
Codeforces Round #603 Div. 2 F. Economic Difficulties DFS+DP题意思路Code传送门:https://codeforces.ml/contest/1263/problem/F题意给两棵树,一颗在上面,另一颗在下面,两棵树的叶子节点都连接着一台机器。给两棵树,一颗在上面,另一颗在下面,两棵树的叶子节点都连接着一台机器。给两棵树,一颗在上面,另一颗在下面,两棵树的叶子节点都连接着一台机器。问,最多删掉多少条边,每个机器都至少存在一条路径到达两个根原创 2021-03-12 13:57:47 · 131 阅读 · 0 评论 -
2020ICPC上海站 E题 The Journey of Geor Autumn 组合数学 + dp
2020ICPC上海站 E题 The Journey of Geor Autumn 组合数学 + dp题意思路Code(MS)传送门:https://ac.nowcoder.com/acm/contest/9925/E题意有多少个满足1...n的全排列中,i>k时,ai>minj∈[i−k,i)aj。(n≥107 k≥107)有多少个满足1...n的全排列中,i > k时,a_i>min_{j\in[i-k,i)}a_j。(n\ge10^7\;k\ge10^7)有多少个满足1原创 2020-12-18 13:57:40 · 526 阅读 · 0 评论 -
牛客练习赛69 D-火柴排队
牛客练习赛69 D-火柴排队 dp + 组合题意思路Code(64ms)传送门:https://ac.nowcoder.com/acm/contest/7329/D题意给长度为n的序列和一个d,分别在n个数中选k(1<=k<=n)个数,将这k个数增加d之后不影响排名,要求ai+d<=ajai+d<=ajai+d<=aj。分别输出每一个k的概率。思路要是想在每个k中找出合法的方案,不管是正向的DFS还是反向的容斥,这都会导致T掉(主要是不会做,做了也会错)。看到n=原创 2020-09-11 22:54:34 · 368 阅读 · 0 评论 -
HDU1074 Doing Homework
HDU1074 Doing Homework 状压DP题意思路Code(15MS)传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1074题意有n本作业,每本都有一个完成时间和提交截止时间,当完成作业后提交,每超过截止时间1分就扣1分,问怎么最小化扣的分数。思路由于n只有15,所以就可以用状压dp。定义状态为1 (1<<n)−11~(1<<n)-11 (1<<n)−1,我们先枚举每个状态iii,原创 2020-10-07 16:06:11 · 141 阅读 · 0 评论 -
洛谷P2051 中国象棋 状压dp
P2051 [AHOI2009]中国象棋 状压dp思路因为在同一行或同一列中最多放两个炮,所以可以放0、1、2个炮,三个以上的就不合法,因为可以互相打。因为在同一行或同一列中最多放两个炮,所以可以放0、1、2个炮,三个以上的就不合法,因为可以互相打。因为在同一行或同一列中最多放两个炮,所以可以放0、1、2个炮,三个以上的就不合法,因为可以互相打。对于状态压缩dp,首先需要假设状态,这题的状态就是0、1、2,(列是指第i行中1 m列)0代表一列中没有炮,1代表一列中有一个炮,2代表一列中有2个原创 2020-08-12 18:37:13 · 204 阅读 · 0 评论