首页 > 其他分享 >树形 dp 做题笔记

树形 dp 做题笔记

时间:2024-08-20 15:39:56浏览次数:11  
标签:min texttt 树形 笔记 TAG dp

在这个随笔中,会有笔者的一些做题笔记,包括但不限于树形 dp 的思想、解题技巧、代码实现等。

  • CF1926G Vlad and Trouble at MIT \(\texttt{*1900}\)。

TAG: \(\texttt{树形 dp}\)

\(dp_{i,S,P}\) 为 \(i\) 的子树内是否存在 SP 的状态。

转移方程为:

当 \(s_i\) 为 C

dp[x][0][0] += min({ dp[v][1][0] + 1, dp[v][0][1] + 1, dp[v][0][0] });
dp[x][1][0] += min({ dp[v][0][0], dp[v][1][0], dp[v][0][1] + 1 });
dp[x][0][1] += min({ dp[v][0][0], dp[v][1][0] + 1, dp[v][0][1] });

当 \(s_i\) 为 S

dp[x][1][0] += min({ dp[v][1][0], dp[v][0][1] + 1, dp[v][0][0] });

当 \(s_i\) 为 P

dp[x][0][1] += min({ dp[v][1][0] + 1, dp[v][0][1], dp[v][0][0] });

代码

  • 1353F Decreasing Heights

TAG: \(\texttt{dp, 暴力}\)

枚举 \(a_{1, 1}\) 的值,然后算出 \((1, 1)\) 到 \((i, j)\) 的步数即 \(a_{i,j} = a_{1, 1} + i + j - 2\),并暴力 \(dp\)。

代码

标签:min,texttt,树形,笔记,TAG,dp
From: https://www.cnblogs.com/kimi0705/p/18364041/TreeDpProblems

相关文章

  • THLM论文阅读笔记
    PretrainingLanguageModelswithText-AttributedHeterogeneousGraphs论文阅读笔记Abstract现存的问题:​ 目前语言模型(LM)的预训练任务主要集中在单独学习每个实体的文本信息,而忽略了捕捉TAHGs中实体间拓扑连接的关键环节。提出方法:​ 本文提出了一种新的LM预训练框架......
  • [AtCoder - tdpc_game] :ゲーム 题解
    [AtCoder-tdpc_game]:ゲーム题解一道小清新\(dp\)题。定义\(dp_{i,j}\)为第一堆山还有\(i\)个物品,第二堆山还有\(j\)个物品,すぬけ君能取得物品的最大价值。由于只能取两座山最上面的物品,假设当前两座山分别有\({x,y}\)个物品,すぬけ君选后只能有两种情况,分别为\(d......
  • TCP 通信-Qt-思维导图-学习笔记
    TCP通信TCP简介TCP协议概述全称:TransmissionControlProtocol(传输控制协议)特性:面向连接、可靠、基于字节流的传输层通信协议TCP通信流程建立连接:TCP通信必须先建立连接通信端:分为客户端和服务端服务端操作监听端口:服务端监听某个端口,等待客户端连接......
  • 学懂C++(三十九):网络编程——深入详解 TCP 和 UDP 的区别和应用场景
    目录一、TCP的特点及应用场景1.可靠性2.流控制和拥塞控制3.有序传输4.应用场景二、UDP的特点及应用场景1.无连接2.不可靠性3.轻量级4.支持广播和多播5.应用场景三、TCP和UDP的区别四、TCP和UDP的工作原理1.TCP的工作原理三次握手数据传输......
  • 【生化代谢基础笔记】RNA 合成
    第一节原核生物转录的模板和酶⚠️RNA合成需要:DNATemplate,NTP,RNApol,其他蛋白质因子,$Mg^{2+}$一、原核生物转录模板模板链(Templatestrand)VS编码链(Codingstrand)模板链为合成模板另一股单链为编码链,mRNA碱基序列与编码链一致二、RNA聚合酶催化RNA的合成......
  • Java泛型大揭秘学习笔记
    泛型概述引入背景:Java泛型在JDK5中引入,目的是增强类型系统和表达能力。主要优势:类型安全:编译时类型检查,避免运行时错误。消除强制类型转换:简化代码,提高可读性。提高代码重用性:创建通用代码,适应不同场景。性能提升:减少自动装箱拆箱操作。泛型基础泛型定义:允许类型作......
  • Docker 入门文档阅读笔记
    Docker的架构图片来自Docker官网教程Docker采用CS架构,可以通过CLI和API与Dockerdaemon进行交互。DockerObjectsImages(镜像)Animageisaread-onlytemplatewithinstructionsforcreatingaDockercontainer.Often,animageisbasedonanotherima......
  • Python 面向对象(笔记)
    一、函数的概念函数用于在程序中分离不同的任务,是模块化程序设计的基本构成单位,是对程序逻辑进行结构化或过程化的一种编程方法函数定义好后,可以反复调用使用,这样就可以避免重复编写代码,而且,功能如果需要修改,只要更改函数定义就可以,维护方便1.1使用函数的优点 实现结......
  • CSS学习笔记
    CSS(CascadingStyleSheet)层叠级联样式表CSS:表现(美化网页)字体、颜色、边距、高度、宽度、背景图片、网页定位、网页浮动……建议HTML和CSS分开写 CSS的优势:内容和表现分离网页结构表现统一,可以实现复用样式十分丰富建议使用独立HTML的CSS文件利用SEO,容易被搜索引擎收......
  • LLM大语言模型学习笔记(2)
    一、RAG定义        大型语言模型(LLM)相较于传统的语言模型具有更强大的能力,然而在某些情况下,它们仍可能无法提供准确的答案。为了解决大型语言模型在生成文本时面临的一系列挑战,提高模型的性能和输出质量,研究人员提出了一种新的模型架构:检索增强生成(RAG,Retrieval-Au......