数位 心得dp

康复训练の树形DP

所有代码的开头头文件,宏定义和命名空间如下 #include <bits/stdc++.h> #define Tp template<typename Ty> #define Ts template<typename Ty,typename... Ar> #define ll long long # ......
树形

【FIFO】vivado FIFO IP核的一点使用心得

简单记一下今天在使用FIFO的过程中的一些注意事项。 【时钟模块】 使用时钟模块用于生成FIFO模块的读写时钟,在复位之后时钟模块不能立刻输出时钟,需要等待一段时间(我仿真的时候就想着怎么没数据出来捏) 具体标志为 locked信号拉高 【FIFO模块】 同样的FIFO模块在复位之后也不能立刻工作, ......
FIFO 心得 vivado

矩阵链(DP思想)

引入 按顺序排列的的三个矩阵 M1,M2,M3 计算三个矩阵相乘结果,有两种乘法 (M1 M2) M3 M1(M2 M3) 但两种乘法计算次数不同 三个矩阵维度如下 4 * 5 5 * 6 6 * 7 第一种计算次数 4 * 5 * 6 + 4 * 6 * 7 第二种计算次数 5 * 6 * 7 + ......
矩阵 思想

没有在线调试功能时,调试代码心得

1、串口输出数据 2、极端情况,没有额外串口时,可以把一个串口先当调试口用,先调试其他功能 3、可以控制printf是否可以输出信息 4、生成可执行文件时,生成一版带printf输出,一版不带printf输出,调试时两者交替用 5、串口发送数据是否正常,接收处理数据是否正常 6、串口通信必须保证一端 ......
心得 代码 功能

rxjs的几点使用心得

1.对错误的处理 日常使用中,点击按钮需要往后台发消息,为了不重复发消息,经常需要把点击事件做成subject,然后把发消息的过程做成switchMap,类似下面的写法 const subject = new rxjs.Subject(); subject.pipe( rxjs.operators. ......
心得 rxjs

405 最长公共子序列 线性DP

视频链接:https://www.bilibili.com/video/BV1EK411K7Eb/ #include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N=1010; i ......
线性 序列 405

403 最长上升子序列 线性DP

视频链接:https://www.bilibili.com/video/BV1KK4y1e7t7/ #include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N=1010; i ......
线性 序列 403

心得两则

守规矩的人我们喜欢,会变通的人我们也想要 作为一个TL期望下属按照自己制定的规则去执行,又期望下属在处理事情的时候能够灵活变通。到底是要不要变通呢?看上去矛盾了吧! 其实二者并不会相互矛盾,本质上就是上级想要的就是在对的时候做对的事的人。 但在下级出错的时候往往会向下级强调其中一点,等于是向下级传递 ......
心得

Leetcode(剑指offer专项训练)——DP专项(8)

最长递增路径 题目 给定一个 m x n 整数矩阵 matrix ,找出其中 最长递增路径 的长度。 对于每个单元格,你可以往上,下,左,右四个方向移动。 不能 在 对角线 方向上移动或移动到 边界外(即不允许环绕)。 链接 DP 但是依旧不能覆盖所有的情况 class Solution { pub ......
专项 Leetcode offer

一道名题-(csp 儒略日)的心得与技巧

引: 如果你见到一个oi对着 4713,1582 146097 2299160 颠颠地笑,不用怀疑,他是在做那道名题--《csp-s2020 T1 儒略日》 这道题,我做了三年,平均每年做一次,我来讲讲我的心得。 读题 题面很长,细节很多,我们需要耐心细心的读,此时多花一点时间是划得来的。 我们得出 ......
一道 心得 技巧 csp

换根dp

给定一棵树,树中包含 nn 个结点(编号11~nn)和 n−1n−1 条无向边,每条边都有一个权值。 请你在树中找到一个点,使得该点到树中其他结点的最远距离最近。 输入格式 第一行包含整数 nn。 接下来 n−1n−1 行,每行包含三个整数 ai,bi,ciai,bi,ci,表示点 aiai 和 b ......

「学习笔记」数位 DP

「学习笔记」数位 DP 意义不大的题不写了。 点击查看目录 概述 数位 DP 一般用来解决「在一个较大的区间内统计具有一定特征的数的数量」的问题。 数位 DP 一般有两种做法: 递推法:首先需要预处理出具有一定条件的数的个数,然后将上限按数位拆分开来考虑贡献。 暴搜法:直接记忆化搜索具有特定条件的数 ......
数位 笔记 DP

LeetCode 双周赛 101,DP/中心位贪心/裴蜀定理/Dijkstra/最小环

本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 大家好,我是小彭。 这周比较忙,上周末的双周赛题解现在才更新,虽迟但到哈。上周末这场是 LeetCode 第 101 场双周赛,整体有点难度,第 3 题似乎比第 4 题还难一些。 周赛大纲 2605. 从两个 ......
定理 LeetCode Dijkstra 101 DP

20230401数位DP

数位DP 数位DP通常指在$[l,r]$区间中有多少个满足条件$k$的个树 常见的数据范围都很大 也就是说, 把数字的枚举,变成数字的构造 不要把数字看作是$10^{18}$ 而把数字看作是$18$位数的填数过程 就是把原本枚举的问题转化为了构造的问题 然而数位dp常通过记忆化搜索实现 tips: ......
数位 20230401

2023年4月8日leetcode练习心得

给你一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。 你必须设计并实现线性时间复杂度的算法且仅使用常量额外空间来解决此问题。 来源:力扣(LeetCode)链接:https://leetcode.cn/prob ......
leetcode 心得 2023

数位 dp

数位 $\text{dp}$ 前言 谨慎学习此算法。 算法讲解 AcWing 1081.度的数量 题意分析:你看到这道题,是不是无从下手?其实题目就是让我们求在 $x \sim y$ 中,有多少个数分解成 $B$ 进制后仅有 $k$ 位为 $1$,其余均为 $0$; 考虑暴力:从 $x$ 枚举到 $ ......
数位 dp

石子合并 - 区间 DP

石子合并 - 区间动态规划 题意 设有 $N$ 堆石子排成一排,其编号为 $1 \sim N$。 每堆石子有一定的质量,可以用一个整数来描述,现在要将这 $N$ 堆石子合并成为一堆。 每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻,合并时由于选择的 ......
区间 石子 DP

蒙德里安的梦想 - 状压 DP

蒙德里安的梦想 - 状态压缩动态规划 题意 求把 $N \times M$ 的棋盘分割成若干个 $1 \times 2$ 的长方形,有多少种方案。 样例输入 2 4 样例输出 5 算法 状态压缩动态规划 (状压DP) $\to$ OI-WIKI 状态压缩,顾名思义,就是将某一种状态压缩成容易储存的形 ......
梦想 DP

DP

1. 最大的和 来源《信息学奥赛一本通》 原题链接 题目描述 对于给定的整数序列 $A=\lbrace a_1,a_2,…,a_n \rbrace$,找出两个不重合连续子段,使得两子段中所有数字的和最大。 我们如下定义函数 $d(A)$: $$d(A) = max_{1≤s_1≤t_1<s_2≤t_ ......
DP

软件工程日报——团队合作小心得

在经过两天的休息之后,我们团队终于准备要继续进行项目的编写,准备合作完成这个排班系统。 想法很美好,现实很骨感,我们小组在完成前端框架之后不知道接下来的方向在哪,不知道如何具体分工,这可让我犯了难题。 作为队长,我简单思考了一下我们队接下来的方向,主要分为三个方向:后端编写、前端优化、前端与i后端的 ......
软件工程 团队 心得 日报 工程

合成大西瓜 (期望DP,消元) (2023年“华为”杯广东工业大学第十七届程序设计竞赛)

思路: 离目标越进吗,那个期望值越小,所以就 f=f1+f2+f3..... ......

树形dp

https://atcoder.jp/contests/abc259/tasks/abc259_f 树形dp(最简单的那种类型,但是题目的方法还是很巧妙的) 易知:负权边可以忽略 思路 定义 定义f[i][0]表示以i为根的子树尽量用到d[i]-1条边的最大可能(留一条边给父节点联通用) f[i][ ......
树形

数位dp

#数位dp ##思想 一般来说,题目是要求在区间$[l,r]$中符合某一种条件的数的个数 我们用前缀和的思想考虑,分别求出$[1,r]$和$[1,l-1]$中数的个数相减即为所求 这里采用记忆化搜索的方式实现 ##模板 #include<iostream> #include<cstring> #in ......
数位

【容斥、状压dp】主旋律 题解

【清华集训2014】主旋律 题解 神秘题。 题目简述 给你一个有向图 $G=(V,E)$。求有多少 $E$ 的子集 $E'$ 使得新图 $G'=(V,E')$ 是强连通图。 强连通图的定义是任意两点 $u,v$ 均存在 $u\to v,v\to u$ 的路径。 $n\leq 15,m\leq n\t ......
题解 主旋律

一道一板一眼的数位dp和二分结合的板子题

题目 1811E - Living Sequence 题意 找出第n个,数位中不含‘4’的数字 思路 数位dp + 二分 唯一要注意的就是纯dfs搜索会卡常(hh,就是复杂度太高了),用上一点记忆化 代码 const int N = 14; int dp[N][N]; int a[N]; int l ......
一板一眼 板子 数位 一道

Disjoint-Set-Union Sum (诈骗题)(区间DP, 位置顺序!!!!)

题目大意: 给出一个序列P , n 个点 每次可以选择2个 相邻区间进行合并, 会产生一个贡献值,当然合并n-1就合并完了, 问在所有的情况下, 贡献和是多少 思路: 易错点: 这个所有情况, 你枚举的合并的那个先后顺序是有关系的!!! 因此直接去区间dp只能把各个合并的情况给弄出来,但是他的先后顺 ......

Leetcode(剑指offer专项训练)——DP专项(7)

矩阵中的距离 题目: 给定一个由 0 和 1 组成的矩阵 mat ,请输出一个大小相同的矩阵,其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 链接 TLS思路题解 暴力DFS的结果是超时😢,就是找每个位置的距离它最近的零点的位置 class Solu ......
专项 Leetcode offer

[Algorithm] DP - 03. Max Subset Sum No Adjacent - Slice window

Write a function that takes in an array of positive integers and returns the maximum sum of non-adjacent elements in the array. If the input array is ......
Algorithm Adjacent Subset window Slice

洛谷(dp) 动态规划练习的部分题目心得

P1044 栈这个题目 最大的问题是完全没有想清楚dp数组如何定义,完全陷入了背包的那个dp数组含义中了,导致怎么都想不出关系, 而且看了题解提示之后也无法领悟递推的思想,无法感受那种由前面推导后面的思想. 导弹拦截 P1020 这题是我太惯性思维了,疯狂往如何才能构造dp数组想,然后没能真的把握题 ......
题目 心得 部分 动态

状压DP简介

##普通DP回顾 DP是解决多阶段决策最优化问题的一种思想方法,即利用各个阶段之间的关系,逐个求解,最终求得全局最优解。我们通常需要确认原问题与子问题、动态规划状态、边界状态、状态转移方程。 动态规划多阶段一个重要的特性就是无后效性,即“未来与过去无关”。无后效性就是对于某个给定的阶段状态,它以前各 ......
简介