lg-dp3

news/2024/11/16 15:34:36/文章来源:https://www.cnblogs.com/haozexu/p/18352156

lg-dp3

计数的东西有什么特点、转化/好的刻画方式

A Farthest City

题面关键信息:权值为1的最短路 --- bfs --- 分层

那么显然加一个点他只能与上一层连,和一层内部连。则设 \(f_{i,j}\) 为 [点数,最后一层点数]

\[f_{i,j}=2^{j\choose 2}\sum_{k=1}^{i-j}{f_{i-j,k}(2^k-1)^j{n-[i\neq n]-(i-j)\choose j}} \]

B CSA [1]

题目关键信息:排列。等价于求数的拓扑序个数。

计数对象性质:父亲位置 < 儿子位置

则如果确定根 \(r\) ,那么可以设 \(f_x\)\(x\) 子树中的答案。

\[f_x=\sum_{y\in Son(x)}{sz_x+sz_y-1\choose sz_y}f_y \]

本题还有结论为 \(\frac{n!}{\prod sz_x}\)

C [AGC030D] Inversion Sum

计数对象性质:很好维护

其实你要不就是一直维护这个序列(整体来看),要不就是一对一对看。

那么变成概率,再变成期望就很自然了。所以现在我们要求 \(f(i,j)=\mathbf P(a_i>a_j)\)

考虑在交换的时候维护 \(f\)

当然不转化可不可以做,是可以的,但是其实很像的。

  1. 期望有线性性

  2. 对概率的维护其实融合了所有的情况

D Shopping

题目关键信息:买东西的点必须是连通块

淀粉质可以处理连通块,但是本题也可以按 dfn dp

E [CEOI2016] kangaroo

计数对象特征:波浪形的(wavy);

排列要是波浪形的,最后一个要是 T,第一个要是 S。

考虑连续段 dp,本质上是我们按照某个顺序加数,只确定了相对顺序,然后按照某种方式刻画连续段来维护某种限制。

从小到大加入数,设 \(f_{i,j}\) 表示 [当前加到i,有j段]

此时,有三种方案:

  • 新开一段 \(f_{i,j}=(j-[i>S]-[i>T])f_{i-1,j-1}\) (S前面和T后面不能插入段)

  • 加在某一段前面/后面 非法(分类讨论一下可以证明)

  • 合并两端 \(f_{i,j}=jf_{i-1,j-1}\)

F Tenzing and Random Operations

容易得到式子,但是没啥用,考虑组合意义

这个问题就更具有 dp 多层决策的特征。令 \(f_{i,j}\) 表示 [走过 \(1\to i\),已经用了 \(j\) 个工具]。

那么:

  • 不放置新的工具,直接走 \(a_{i+1}f_{i,j}\to f_{i+1,j}\)

  • 用获得过的工具,\(jvf_{i,j}\to f_{i+1,j}\)

  • 再放置一个工具,\(f_{i,j}\times\frac{i+1}{n}\times(m-j)\times v\to f_{i+1,j+1}\)

G PERIODNI

由于原来这个表格是不规则的,这是不好处理的,考虑划分成若干矩形建笛卡尔树

在一个小矩形内部的填数方案是容易处理的,对于列的限制,建一棵笛卡尔树,然后做树形 dp 处理。

H Distributing Integers

等价于前面 B 题 CSA

I #(subset sum = K) with Add and Erase

要求动态维护 K 的拆分数。只有加入是很简单的,如果存在删除,我们就强制从 \(-x\) 转移。


可撤销背包,多项式理解方法:

加一个----两项的多项式乘法,删一个----两项的多项式除法。

J [COCI2006-2007#3] BICIKLI

到达不了环就 dp,有环就分讨:

  • 若环可以到达2 INF (取反图判断)

  • 不可以就不必访问环

K [HNOI2019] 校园旅行

大boss BLACK

\(30\%\)

\(\mathcal O(m^2)\)

\(100\%\)

Hint: 缩减边的数量,使其与点数同级

现在考虑对于两边,我们要做的就是同色来连续子串对应长度相等。

考虑如何能做到。

从变化的角度看,其实对于一个同色联通块来说,它为连入的点提供的能力就在于:

  1. 如果他是偶环,那么你可以无损地获得任何一个更大的、相同奇偶性连续段,然而如果在保证联通性的同时,即使只有一条边,也可以达到这个目的。

  2. 如果他是奇环,那么你可以获得改变奇偶性的机会,你可以无损地到达任何一个更大的连续段,如果是这样,那么在保证连通性的时候,连续走一个自环也能达到相同的效果

所以我们可以根据上面的观察削减边数。


  1. 本题与下面 H 题等价。 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/780810.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FFmpeg开发笔记(四十五)使用SRT Streamer开启APP直播推流

​SRT Streamer是一个安卓手机端的开源SRT协议直播推流框架,可用于RTMP直播和SRT直播。SRT Streamer支持的视频编码包括H264、H265等等,支持的音频编码包括AAC、OPUS等等,可谓功能强大的APP直播框架。相比之下,另一款APP直播框架RTMP Streamer支持RTMP直播和RTSP直播,不支…

mongo变更流使用及windows下副本集五分钟搭建

mongodb的变更流解释: 变更流(Change Streams)允许应用程序访问实时数据变更,从而避免事先手动追踪 oplog 的复杂性和风险。应用程序可使用变更流来订阅针对单个集合、数据库或整个部署的所有数据变更,并立即对它们做出响应。由于变更流采用聚合框架,因此,应用程序还可对…

ConcurrentHashMap的原理

背景 我们知道hashmap是一个线程不安全的数据结构,在多线程编程的时候,多个线程同时向hashmap中put元素的时候,会发生数据丢失。多线程put操作后,再get操作导致死循环。 多线程put非NULL元素后,get操作得到NULL值。 使用 为了保证并发安全,我们使用hashmap的时候,建议是…

ABC201E Xor Distances 题解

从洛谷搬过来的题解,因为感觉和上一把 ABC的E有点像呐ABC201E Xor Distances 题解 题目大意 给定一个带权树,求树上每两点的简单路径上的边权的异或和的和。 形式化的,定义 \(dis(i,j)\) 为 \(i\) 到 \(j\) 的简单路径上的边权的异或和,求 \(\large\sum\limits_{i=1}^n\sum…

学生Java学习路程-6

ok,到了一周一次的总结时刻,我大致会有下面几个方面的论述:1.这周学习了Java的那些东西2.这周遇到了什么苦难3.未来是否需要改进方法等几个方面阐述我的学习路程。 复习面向对象数组 数组的三种初始化方法:默认,静态,动态引用类型Man放入数组中的测试代码数组的拷贝 使用…

Lazysysadmin靶机笔记

Lazysysadmin靶机笔记 概述 lazysysadmin是一台Vulnhub靶机,整体比较简单,要对一些存在服务弱口令比较敏感。 靶机地址:https://pan.baidu.com/s/19nBjhMpGkdBDBFSnMEDfOg?pwd=heyj 提取码:heyj 一、nmap扫描 1、主机发现 # -sn只做ping扫描,不做端口扫描 sudo nmap -sn 1…

图片压缩保证让你看的明明白白

场景 很多时候,都会遇见图片上传的场景。 在上传给服务器之前。 前端为了节省服务器的存储空间。 会对图片进行压缩。 下面我们来一起学习一下图片压缩。 图片压缩的步骤: 1.选择图片。使用 <input type="file">来实现 2.将选择的图片显示出来。 获取到图片的…

学前准备工作

什么是计算机computer:全称电子计算机,简称电脑。 能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备 由软件和硬件组成 常见形式有台式计算机,笔记本计算机,大型计算机等 广泛应用在:科学计算、数据处理、自动控制、计算机辅助设计、人工智能等领域。计算机…

多元时间序列分析统计学基础:基本概念、VMA、VAR和VARMA

多元时间序列是一个在大学课程中经常未被提及的话题。但是现实世界的数据通常具有多个维度,所以需要多元时间序列分析技术。在这文章我们将通过可视化和Python实现来学习多元时间序列概念。这里假设读者已经了解单变量时间序列分析。 1、什么是多元时间序列? 顾名思义,多元时…

wqs二分

wqs二分 用来处理一类带有限制的问题,如恰好选 \(k\) 个,本质是通过二分来规避这个选取数量的限制。 使用前提:原问题具有凹凸性。设 \(g_i\) 表示选 \(i\) 个物品的答案,那么所有 \((i, g_i)\) 点组成一个凸包,满足 \(g(k)\) 单调。 这类题目通常有以下特点:如果不限制选…

IDEA Sonar 扫描

1. 修改SonarQube-7.7\conf\sonar.properties数据库配置2. 启动SonarQube-7.7\bin\windows-x86-64\StartSonar.bat,打开 localhost:9000,账密 admin / admin3. pom文件配置:<profiles><profile><id>sonar</id><properties><sonar.host.url…