dp

zr模拟赛 8 (dp)

zr模拟赛 8 你好我的朋友,现在我生病了,对不起。 23zr提高day8-测测你的计数水平 👌 首先断环为链,方法是枚举某一个点连的是那一条边。 接着设\(f_i\)表示从左到右扫到i的时候所有区间都没有超过i的方案数。 然后发现如果当前新区间覆盖了两个相同颜色的点就寄了,但是没有就没事。 另外 ......
模拟赛

DP做题记录(10.30-)

10.30 ICPC-22-JN C(62/504) dfs的同时DP,u由fa转移,问题在于求同层兄弟选i个组成size和为j的方案数:这个暴力是\(O(n^4)\)的,一开始考虑了预处理前后缀再拼起来,然而拼起来的复杂度更高;想到先所有儿子做一遍再回退DP,但又觉得银牌DP题用不到这么高级的东西 ......
10.30 10 30

cf41D. Pawn(将余数设计到dp状态中)

D. Pawn 感觉这种dp套路似乎非常常见,我们可以设 f[i][j][x]表示走到(i,j),当前的值为f[i][j][x]*k+x ,也就是我们将余数x作为放在状态中。 #include<cstdio> #include<algorithm> #include<cstring> #includ ......
余数 状态 Pawn cf 41

送快递(状压dp)

题目链接在这里:Lutece (uestc.edu.cn) 典型的状压dp,对于状压dp一般有三重循环,第一个枚举状态,第二个和第三个分别枚举一个状态到另一个状态的起点和终点。 #include "bits/stdc++.h" using namespace std; const int MAX=5 ......

换根DP

目录换根DP相关资料例题 换根DP 相关资料 例题 ......

数位dp

点击查看代码 #include <bits/stdc++.h> using namespace std; const int N=250,mod=998244353; int f[N][2000];//长度为i时,前pos-1项的和为j的合法数 string s; //pos位置,sum==mark ......
数位

第 369 场周赛(简单位运算,分类讨论,dfs,树形dp)

简单位运算模拟 class Solution { public: int findKOr(vector<int>& nums, int k) { vector<int> bit(32, 0); for(int i = 0; i < 31; i ++ ) { int cnt = 0; for(auto ......
树形 369 dfs dp

【题解】P9753 [CSP-S 2023] 消消乐(字符串哈希,DP)

【题解】P9753 [CSP-S 2023] 消消乐 不知道考场脑子是抽了还是有病,全程都不知道在放什么屁。 特别鸣谢:@dbxxx 给我讲解了解法一的满分做法,并让我对哈希有了更加深刻的认识;@Daidly 给我讲解了解法二。 题目链接 P9753 [CSP-S 2023] 消消乐 题意概述 给定 ......
题解 字符串 字符 P9753 CSP-S

At_dp_x Tower

题目链接 贪心 + Dp Part1 看上去很像背包,但是发现最后答案和堆放的顺序有关,很容易想到状压,但是复杂度不允许。 而且发现如果一个一个向上放,当前决策会有后效性,题目也不允许在开一维状态。 Part2 对于后效性,我们可以每次把箱子放在最下面,就没有后效性了。 重点是解决顺序问题,考虑两个 ......
At_dp_x Tower At dp

#期望dp#CF1810G The Maximum Prefix

洛谷题面 CF1810G 分析 考虑最大前缀和满足两个条件,就是所有前缀和都不超过,以及一定有一个等于。 那么就要保证它能达到最大值且一直不能高于它 设 \(dp[i][j][0/1]\) 表示前 \(i\) 个数离达到最大值还需要 \(j\) 且未/已经达到过最大值。 初始化就是 \(dp[0][ ......
Maximum Prefix 1810 The dp

#dp,二项式反演,容斥#CF285E Positions in Permutations

题目 问有多少个长度为 \(n\) 的排列 \(P\) 满足 \(|P_i-i|=1\) 的 \(i\) 的个数恰好为 \(k\) 个 分析 设 \(dp_{i,j,k}\) 表示前 \(i\) 个数钦定 \(j\) 个数满足上述条件且现在 \(i\) 和 \(i+1\) 因此被占用的方案数。 那么 ......
二项式 Permutations Positions 285 dp

ABC219 H 区间dp 费用提前计算

ABC219 H 跟关路灯很像。 很容易注意到我们拿走的只能是一个区间,观察n的范围发现区间dp是个好想法。 朴素的想法是定义 \(f_{i,j,k,0/1}\) 为拿走i到j里面的所有数,走了k秒,现在在 i/j 的方案数。 然后发现k太大了。 咱当时的想法是希望优化复杂度,把k去掉结果发现不能保 ......
区间 费用 ABC 219

DP训练笔记

预计时间一个月,一天的量为1-2道左右,难度不均,黄-紫都有,后阶段紫 // https://www.luogu.com.cn/problem/P4141 // 对于任何一个物品对答案的贡献都是从1到n递推过去的,所以 // 只需要开一个相同的数组然后从头遍历一遍,把该物品对答案的贡献减去就可以了 ......
笔记

国产CAN总线收发芯片DP1042 兼容替换TJA1042

说明 1 简述DP1042是一款应用于 CAN 协议控制器和物理总线之间的接口芯片,可应用于卡车、公交、小汽车、工业控制等领域,支持 5Mbps CAN FD 灵活数据速率,具有在总线与 CAN 协议控制器之间进行差分信号传输的能力,完全兼容“ISO 11898”标准。2 短路保护DP1042的驱动 ......
1042 总线 芯片 国产 CAN

CF809D Hitchhiking in the Baltic States-平衡树+DP

CF809D Hitchhiking in the Baltic States-平衡树+DP Statement 给出 \(n\) 个区间 \([l_i,r_i]\) 和 \(n\) 个未知数 \(a_1,a_2,\dots,a_n\),现在你要确定这 \(n\) 个数,使得 \(a_i\in[l_ ......
Hitchhiking Baltic States 809D 809

学校(抽象dp)

题目简述 选择的学校编号依次为 \(p1, p2, p3, ..., pk(1 ≤ p1 < p2 < ... < pk ≤ n)\),若存 在 \(i(1 ≤ i ≤ k − 3)\) 使得 $ a_{p_i} ⊕ a_{p_{i+1}} ⊕ a_{p_{i+2}} ⊕ a_{p_{i+3}} = ......
学校 dp

[最优化DP]决策单调性

决策单调性的概念&证明工具: 决策单调性,是在最优化dp中的可能出现的一种性质,利用它我们可以降低转移的复杂度。 首先dp中会有转移,每个状态都由若干个状态转移而来,最优化dp比较特殊,只能由一个最优的状态转移而来。 我们称之为某个状态的最优转移点。 然后,dp会有一个转移顺序,比如说按层转移,从左 ......
DP

动态规划——决策单调性优化DP 学习笔记

动态规划——决策单调性优化DP 学习笔记 决策单调性 对于最优性问题,常有状态转移方程:\(f_i = \min/\max\{f_j\dots\}\), 形象的:如果 \(i\) 的最优转移点是 \(j\),\(i'\) 的最优转移点是 \(j'\),当 \(i<i'\) 时,有 \(j\le j' ......
笔记 动态

[USACO19DEC] Greedy Pie Eaters P 区间dp

题目背景 Farmer John has MM cows, conveniently labeled 1…M1…M, who enjoy the occasional change of pace from eating grass. As a treat for the cows, Farmer ......
区间 Greedy Eaters USACO DEC

动态规划 DP 的一些笔记以及解题思路

万物的开始,首先介绍一下动态规划(dynamic programming,DP)的基本概念:动态规划适用于有重叠子问题和最优子结构性质的问题,并且记录所有子问题的结果,因此动态规划方法耗费时间远远少于朴素解法。 动态规划总共可以分为4个步骤:1、定义子问题 2、写出子问题的递推关系 3、确定DP数组 ......
思路 笔记 动态 DP

【dp】【竞赛图的性质】ARC163D Sum of SCC 题解

ARC163D 发现这个竞赛图一定能被分为两个集合 \(A\),\(B\)。满足 \(\forall u\in A,v\in B\),均有 \(u\to v\in E\)。答案就是划分这两个集合的方案数。 证明: 首先,竞赛图缩完点后一定是一条链,对强连通分量进行标号,满足编号小的强连通分量指向编号 ......
题解 性质 163D ARC 163

【前缀和优化 dp】CF1542E1 Abnormal Permutation Pairs (easy version) 题解

CF1542E1 首先时间复杂度肯定是 \(\mathcal{O}(n^3)\) 的。 容易想到先枚举最长公共前缀,然后枚举 \(p_{len+1}\) 和 \(q_{len+1}\),再枚举逆序对数进行统计。 令 \(f_{i,j}\) 表示有 \(j\) 个逆序对的 \(i\) 阶排列的个数。 ......
题解 前缀 Permutation Abnormal version

【前缀和优化 dp】CF1542E2 Abnormal Permutation Pairs (hard version) 题解

CF1542E2 首先时间复杂度肯定是 \(\mathcal{O}(n^3)\) 的。 容易想到先枚举最长公共前缀,然后枚举 \(p_{len+1}\) 和 \(q_{len+1}\),再枚举逆序对数进行统计。 令 \(f_{i,j}\) 表示有 \(j\) 个逆序对的 \(i\) 阶排列的个数。 ......
题解 前缀 Permutation Abnormal version

【区间 dp】P5189 [COCI2009-2010#5] ZUMA 题解

P5189 容易想到区间 dp,考虑设计状态。 首先如果只有 \(l,r\) 两维的话,是无法转移的。然后发现 \(m\) 是转移的一个必要的条件,可加入 \(m\) 这一维。由于是区间 dp,所以只需考虑向左或向右加珠子,不妨令 \(f_{i,j,k}\) 消除 \([i,j]\) 以及 \(i\ ......
题解 区间 P5189 5189 2009

【dp】【进制】P3464 [POI2007] WAG-Quaternary Balance 题解

P3464 显然的,先将原数变为四进制的数。 由于算的是进位/不进位的代价最小值和方案数,容易想到 dp。 这里假定该四进制数是从高位到低位的,顺序显然是由低位到高位。 令 \(f_{i,0/1}\) 表示第 \(i\) 位进 / 不进位的最小代价,\(g_{i,0/1}\) 表示的是最小代价下的方 ......

数位 dp 写法

众所周知,数位 dp 是一种难写难调的 sb dp,这里记录一种便于调试的写法。 对于一个区间询问 \([a,b]\),可以把它拆分成 \([1,b]\) 和 \([1,a-1]\) 两个部分作差,并使用函数 \(solve(x)\) 计算出 \([1,x]\) 的答案,将答案的形式改写为 \(so ......
写法 数位 dp

SPI 接口 CAN协议控制器 MCP2515/DP2515国产替代芯片DPC15

can控制器是CAN局域网控制器的简称,为解决现代汽车中众多测量控制部件之间的数据交换而开发的一种串行数据通信总线。CAN 可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。can控制器最初是为汽车的监测、控制系统而设计的,现已 ......
2515 控制器 芯片 接口 国产

弹弹床(连续段dp)

题目简述 一排格子,每个格子上有“L”或“R”,表示向左或向右跳到任意位置。问从任意位置出发跳完所有的格子在第\(i\)格子结束的方案数。答案对 \(10^9 + 7\) 取模。 分析 & 性质 考虑一个选取方案,取的位置序列为排列 与相对位置有关的信息可以考虑插入顺序 最终思路 使用连续段dp的方 ......

dp题集

dp题题集 目录dp题题集P1216 数字三角形 Number TrianglesP2196 挖地雷P1060 开心的金明P8707 [蓝桥杯 2020 省 AB1] 走方格 由于dp做一道卡一道,于是开始死磕的日日夜夜 P1216 数字三角形 Number Triangles dp入门,求路径数字 ......

树形dp学习笔记

我们通常采用递归的方式实现树形dp。 对于每个节点,先递归在它的每个子节点上进行dp,在回溯时,从子节点向根节点进行状态转移。 顺序一般为从叶子结点到根节点递推。 题目: 一. P1352 没有上司的舞会 以子树的根作为dp状态的第一维。容易发现,每个员工是否参加至于他的上司是否参加有关。 不妨设 ......
树形 笔记