07 2022 档案
摘要:written on 2022-7-31 今天搬迁博客,好累啊、、,, 搬迁博客呢,主要是考虑到博客园的影响力,希望自己一年以来在 OI 界的一些感悟能够帮助到后来的朋友们! 其实学习信息竞赛,真的不是出于功名的需要,每一个学竞赛的人都知道,如果不是出于对科学对真理的追求,我们何必如此折磨自己。一年
阅读全文
摘要:##### written on 2022-07-27 乍一看以为是贪心,但是贪心正确性又不能保证,随便交了一发只有 。但是事实上这题只是一道简单 dp。。 状态设计显然,设 表示前 个房屋,第 个高度为 的最小花费。然后转移亦显然,$f_{
阅读全文
摘要:written on 2022-07-27 概率与期望的题目,尤其是设置了情境的~~好像是模拟题的~~这类题,应当优先考虑 dp。 往 dp 的方向上想,首先考虑状态的设计。题目中有几个变量: 钱的上限。 当前的警告次数。 好像就这两个,每次取的钱数可以在转移的时候体现出来。 那么我们可以设 $f_
阅读全文
摘要:written on 2022-07-27 比赛时也想了很多,但是没写出来,让赛后的我感到有些意外。 暴力的 就不说了。 观察到 的范围很大,因此很容易想到倍增优化,或者说是类似矩阵快速幂的东西。比赛时莫名想起那道 的繁殖也不是没有道理,两题的相像之处还是
阅读全文
摘要:written on 2022-07-27 题目传送门 ~~考场上花了一个半小时敲了分块(时间复杂度 ),然后成功拿到了完全暴力的分数。~~ ~~大为悲痛!~~ 先讲 的做法吧,其实这个做法极水无比,就是用一个优先队列存储信息,然后记一个变量
阅读全文
摘要:written on 2022-07-27 ~~简单题,然而考场保龄~~ 题目传送门(愤怒的小鸟) 首先说一下标题的第一个问题,这个问题害的我敲的爆搜代码本该有的 一分也没有。 考场上的求解思路是将浮点数转化为整数后,运用加减消元然后解出抛物线系数 ,但是精度误差太大,导致
阅读全文
摘要:written on 2022-07-27 之前已经总结过一次了,然而这次模拟赛又没有做出来,所以再总结一下。 以换教室为例题。一般来说,期望只是一个描述问题的手段,主要蕴含于其中的思想实则是动态规划。动态规划首先要设计好状态,这题我们设 表示前 节课,申请了 $
阅读全文
摘要:written on 2022-07-27 在做模拟赛时,碰到天天爱跑步这道题,本来已经有了正解的思路了,也想到了树上差分,但是苦于空间问题,因此这个思路被鸽了。 这篇博客总结一下相关的技巧。 树上差分空间开不下的话,可以采用 vector<pair<int,int> > 的形式来存储差分的相关信息
阅读全文
摘要:written on 2022-07-22 之前比赛有遇到最短路相关的,稍作了变形,发现自己并不是很熟练,对算法本质并不透彻,故作此篇。 的适用环境: 判负环 众所周知 是可以判断负环的,这在差分约束中常用,~~当然图论本身更常用。~~ 其方法
阅读全文
摘要:written on 2022-07-20 (注:本文主要引自李煜东算法竞赛进阶指南) 先给出几个概念: 基环树 众所周知树的性质,即对于一个有 个节点的树,必定保证有 条边(无向边)。反过来,对于一个由 条无向边组成的连通图,必定是一棵树。据此,明显的,对于一个有
阅读全文
摘要:written on 2022-07-20 下午在做老师放的二项式反演相关习题,顺便学了一下之前没有掌握的基础内容。 这里贴一篇觉得讲得蛮清楚的博文(传送门),其中需要重点掌握基础形式以及最后的两道思考题(说起来想通了的话也不是很难嘛)。 现在基本上已经都懂了,真是开心。
阅读全文
摘要:written on 2022-07-20 Part1 集合的全部子集公式(~~根据同学的瞎诌名称命名/xyx~~) 公式: 。 证明: 采用赋值法,根据二项式定理, ,然后代入 ,容易证明结论成
阅读全文
摘要:written on 2022-07-20 好久没写差分约束了,这里贴一下 @Studying Father 的一篇模板题题解,感谢~ 传送门 差分约束有两点注意:一是要建一个超级源点,向各个点连一条边权为 的边。二是差分约束中的三角形不等式转化问题。举个例子,若题目给出条件 $x_i-x_
阅读全文
摘要:written on 2022-07-19 其实本质上是一道 题。 首先有如下事实:对于同代的同种小妖,我们只需考虑最早出生的那只。 原因:每只小妖的所有属性,包括成长时间,孵化种类及时间都是一定的。而我们要求的是最远到达的代数,所以只需考虑最早出生的那只即可。~~感性理解一
阅读全文
摘要:written on 2022-07-18 应当说是一道想法题,想到了以后这题就不会太难了,因为涉及的算法也不是很高深。 首先稍稍转化一下题目,将这些事件转化为一个个节点,推论条件可视作有向边(~~这不显然~~)。然后不妨令某一个事件发生为某一个节点被标记,考虑对于每一个节点,如果其被标记,那么根据
阅读全文
摘要:written on 2022-07-13 写一点随记: 对于一张有向图,如何判环? 答:直接跑拓扑排序,将某一点加入队列的条件是这一点的入度为 ,最后查看是否有点的入度不为 。时间复杂度 ,代码实现也不难。 对于树上点权相乘有关的题目,可以考虑特殊情况,因为乘法的速度很快,
阅读全文
摘要:written on 2022-07-12 的范围极小,因此可以想到先预处理出所有互质的数对,然后再做考量。 然后手模一下一些数据,很容易可以将这些数对转化为一条条线段,那么根据题意,答案即为:从这些线段中任选若干条使得它们能覆盖整个区间的方案数。 经计算机测试,线段数最多有 条
阅读全文
摘要:written on 2022-07-12 一开始拿到题,除了爆搜肯定是没有什么思路的。于是我们考虑先推一下式子,看看能否通过适当的转化用高效的算法求解。 题目要求 ,那么我们考虑将结果用另一种表现形式呈现。 $P_1 \times P_2= \
阅读全文
摘要:written on 2022-07-10 超链接:无,可百度。 补一下之前比赛的题目。 题目要求树上点对,很容易想到用点分治,~~但是这个怎么维护我不会于是搁着了。(待更新)~~ 事实上,这题还有一个很明显的特征,也就是最小值。虽然它与链长相结合,但是根据最小值我们仍然可以考虑离线的做法,也就是枚
阅读全文
摘要:written on 2022-07-10 补一下普及组知识点,这次总结一下模板,希望以后能熟练地应用。 对于给定的中缀表达式,首先应将其转化为后缀。大致步骤如下: 读入字符串(中缀表达式)。 开一个新的 类型数组,以后一般就用 好了,然后开一个 $\text{ch
阅读全文
摘要:written on 2022-07-08 例题集合 斜率优化 dp 的解题步骤: 写出暴力的dp转移式。 如果发现有与 有关的 和 与 有关的代数式相乘的形式,那么考虑斜率优化。 将原式化为 的形式,其中 与 (即当前研究对象)有关,
阅读全文
摘要:written on 2022-07-08 许多题都作为原题形式做过一模一样的,但竟然没有做出来!一道点分治,一道线段树合并,都很模板,真的很不应该! 题区间dp,虽然过了,但是状态设计得不好,可以直接看看代码回忆一下。 然后根据C题总结一下点分治的套路:这类题往往统计树上满足条件的点对的个
阅读全文
摘要:written on 2022-07-08 这次比赛打得很差,需要好好总结一下。 题比较灵活。首先肯定是要按照价值,以非递减顺序排序。然后考虑题目的本质。发现事实上排列的大体顺序是一定的,唯一有变化的就是那些价值相同的物品,对于这些物品考虑高度的摆放情况。 一开始的错误思路是直接按高度从大到
阅读全文
摘要:written on 2022-07-08 一开始看到 的数据范围,很明显一眼状压。但是 的范围较大,因此暴力的一个一个箱子进行状压转移只能拿到 。对这种需要顺序枚举 的做法,显然优化的余地已经很小了,因此我们考虑换一种思考方式。 首先对原题进行转化,即为 选取
阅读全文
摘要:written on 2022-06-29 前三题太水就不说了。 先来看一下 题,考试的时候居然只写了爆搜,但是对于部分分数据,dp 的思路应该是很显然的!设 表示前 个人买 幅彩色画的情况数,转移显然。对于每次更改都跑一次,总复杂度 。只
阅读全文
摘要:written on 2022-06-29 这场比赛打的不好,但是也有一些收获。 题相对比较简单,因为是考虑对于每一个根统计答案,排除贪心的思路后,就可以每一次换相邻的根统计贡献计算答案了。链接 题其实也是很明显的,读完题后很快就有两种可能的思路:树形dp 或者是贪心。然后仔细观察数
阅读全文
摘要:written on 2022-06-24 期望与概率专场,打的很烂,这一专题还需要多加训练! 在分析之前,我想先重新申明一下期望的表示意义:某个量的期望,即等于该事件在平均情况下求得的这个量。 这是所有期望dp的基础,也是转移时,期望要除以方案数的根本原因。 另外,总结一下dp题的几个步骤。 模拟
阅读全文
摘要:written on 2022-06-22 题 题目描述 出太阳了。小宝要出去晒太阳,打算在太阳下睡个午觉,家对面有一个n*m的空地,有些地方已经放了东西。他打算把他的小床,放到这块空地上。 他的小床是1*2的。可是小T需要他在指定的区域内,小宝想知道,他有多少种方法,放他的小床。 输入格式
阅读全文
摘要:written on 2022-06-21 题大家都过了,这题的思路指引还是很明显的,只要确定 中的一个元素,那么其他所有的元素都可以确定,并且随某一元素的变化,总的变化是有规律摆动的。 虽然思路很简单,但是一开始还是写挂了很久,主要的原因在于一种方法超时后没有积极地调整思路,其实这
阅读全文
摘要:written on 2022-06-20 昨天月赛的一道题目,写点感触。 题意:对于一棵给定的有根树,每一个点只有其父亲被选取后它才可以被选取,其 被选取权值 为当前值与其权值的较小值,求最大的总权值。 直观的思路是每选取一个点,就将它的所有儿子的权值塞入堆,这样的时间复杂度为 $O(n\log
阅读全文
摘要:written on 2022-06-07 这道题暴力能拿90,~~然而我比较傻只拿了65~~。 首先总结一下骗分的经验:因为这题刚开始我是用直接暴力加边的形式来搞的,这样的话要么会RE,要么会MLE。所以骗分的经验就是,如果发觉建边时可能爆空间,就可以采用不建边,在跑最短路的同时松弛能到的点这样的
阅读全文
摘要:written on 2022-06-06 一题多解。 第一种方法比较直观而且暴力,其关键在于转化题意。此题中的关键,在于对每一个起点 的判定。如果暴力 扫一遍,总时间复杂度就会是 ,超时,因此考虑转化题意后用数据结构优化。 (下述 表示 原意义
阅读全文
摘要:written on 2022-06-06 ~~来补一下以前漏学的普及组知识点~~ Part1 引入 以最经典的二叉哈夫曼树为例。 二叉哈夫曼树,是由对最短二进制编码的研究拓展而来的。 所谓最短二进制编码,描述大致如下: 一部资料中有 种不同的单词,从 到 进行编号。其中第
阅读全文
摘要:written on 2022-05-26 第一次写分层图最短路的题,就以这道题作为一个模板题好了。 分层图最短路听起来是一个很新颖很高端的算法,但是其本质实际上很简单。 首先介绍其适用题目的特征:一般题目给出的信息会包括有几条免费路径,让你求出在有几条免费路径的前提下,到达终点的最短路径。 然后再
阅读全文
摘要:written on 2022-05-25 一道根号分治~~的毒瘤~~题。 这题和之前写过的CF786C Till I Collapse是同一类型的题目,那题题解好像写在某天比赛的总结里了。 这类题最显著的特征有两个: 答案的单调性。观察样例便容易发现这一结论,再稍加思考即可证明其正确性。 对于每一
阅读全文
摘要:written on 2022-05-25 根号分治题,其实是P3203弹飞绵羊的另一种版本,本质是相同的。 我想了想,两者的主要区别在于那题维护的是跳出本块,这题维护的是跳完的次数,那么这个区别的主要原因其实在于一个带修一个不带修。如果带修的话,那么维护的时候就还要维护前面的信息,这样的话为了不让
阅读全文
摘要:written on 2022-05-16 其实这题还是挺显然的,考试的时候因为题面太长,于是选择性跳过,然后死磕C题~~然而爆零~~,这题就留了15min,于是挂了,~~十分悲哀~~,当然,也有收获,对主席树上二分的理解更加深入了。 刚看到题目时,最引人注目的就是数据范围了。题目被分为两个独立的部
阅读全文
摘要:written on 2022-05-25 这篇题解的思考历程分为两部分。 part 1 读完题后,我们容易知道答案具有单调性,因此考虑二分答案。 对于这样两个端点均不固定的题目,我们通常采用的方式是:固定一段,二分另一端。那么对于这题而言,我们可以考虑枚举最大值,二分最小值。至于判定,用一个 df
阅读全文
摘要:written on 2022-05-25 一道简单题,过程不细说了,这题值得总结的一个点是: 对于一些看似需要枚举两端点的题目,可以考虑固定一个点,统计另一边满足条件的情况数。 这题是枚举右端点,在循环的过程中维护需要的值。当然在一些更难的题目中,往往需要数据结构优化,这里也就不展开说了。 这题的
阅读全文
摘要:written on 2022-05-23 两次二分,第一次二分内层套一个 ,以此来保证时间复杂度不超。 如果是一次二分,内层带一个有求lca的 ,这样就过不了,我实在是服了。。。 ~~而且那样还有WA的,然而我对拍全过!~~ ~~刷基础题,心态要刷没了。。~~ 好了言归正传,这题的关键
阅读全文
摘要:written on 2022-5-22 被打爆了,做做思路清晰代码简单的水题找找感觉。。 题目要求同色环的数量,是一道统计题,所以可以考虑组合数学。这题显然我们可以用容斥(如果这也算得上的话)来搞,题目要求同色环,那么我们就可以用总数减去异色环的数量来等价。 总数很简单,组合一下即可,这题能被评成
阅读全文
摘要:written on 2022-05-22 很早以前就想写这题了,刚好昨天比赛碰见,于是写一下总结。 刚开始没有想到正解,于是敲了打表,骗了80pts。正确的打表方式……见代码吧 #include<bits/stdc++.h> using namespace std; int a[100]={1,2
阅读全文
摘要:written on 2022-05-22 ~~所以我好不容易打了一大摞数学公式这题却交不了了??~~ 第一道较为正式的贪心题吧。 思路历程: 这道题前40%的点都可以状压乱水,后面的点比较大,本来尝试用一些不一样的 dp ,但是乘积也极大,状态根本记不下,于是放弃 dp。 题目求问最大值最小,一下
阅读全文
摘要:written on 2022-05-20 暴力美学根号分治!之前有一道很类似的,比这题还要稍微复杂一些些。博客链接 考虑暴力做法:对于每次询问直接统计。 寻找问题瓶颈:发现对于 的询问可以暴力跳,那么对于 的部分,考虑另外的计算方式。思考后发现,
阅读全文
摘要:written on 2022-05-19 ~~第三十篇题解 /kk~~ 基础太烂,于是需要回顾旧知。 分块题做得不多,这道题是一个思路很清晰的分块题,于是就拿这道题回忆一下分块。 先贴一下分块模板 scanf("%d",&n); B=sqrt(n); num=n/B;if(n%B) num++;
阅读全文
摘要:written on 2022-05-16 此题关键在于模拟过程,写出每个询问的通式。 亲手模拟后,发现对于给定的询问 ,我们只需求出 。 单独一个这个式子肯定不好做,所以化简,找出不变的项、会变的项,然后均用线段
阅读全文
摘要:written on 2022-05-16 开始拿到这题时,很明显是数据结构题,但苦于找不到一个合适的数据结构。 那么对于这样的一道题,正解是根号分治。根号分治,顾名思义,就是将询问对象分成 的部分 与 的部分,分别进行处理。 对于前一部分
阅读全文
摘要:written on 2022-05-14 写这篇题解的原因是cpp说我基础太烂,于是找几题巩固。 一道巩固线段树基础的好题。~~同P3071好评~~。 审完题后,发现有许多区间操作,所以很明显是用数据结构维护,维护的过程都不难,因此普通线段树即可维护。 要注意的点就是,为了找连续区间的长度,我们的
阅读全文
摘要:written on 2022-05-06 鸣谢@uid13237的代码提供了我能理解的思路 这是一道计数题。 初见这题,有些束手无策,但是题目给出了三个限制,那么我们对于这种有限制的计数题,可以考虑容斥。 大体思路就是容斥,想到这点,后面的大部分过程就很简单了,中间的过程可以参照这篇题解的,~~因
阅读全文
摘要:written on 2022-05-06 ~~这题简单,先给这题写题解~~ 套路题,为每个区间分配左右端点,那不就是在长度为 的数轴上任取 个点吗?然后考虑题目的要求,区间两两不包含。 对于这个要求,我们发现,对于同一数轴上的几个区间,要求不互相包含,在已经确定所有左右端点的情况
阅读全文
摘要:written on 2022-05-06 写了三天了,写篇题解加深一下印象。 首先分析题意。我们发现最后的概率是以 分子乘以分母逆元的形式 出现的,然后这又是一道概率题。那么我们就可以考虑直接算满足的方案数了,因为最后的总方案数十分好算,就是所有长度相乘。 题目的限制是单调不增,直观的想法是用 $
阅读全文
摘要:written on 2022-05-06 传送门 一道好题,是对差分的进一步理解。 首先我们要明确几个结论。 设原数组为 ,差分数组为 ,那么 , , 。 差分数组维护的信息是几个相邻数之间的关系,支
阅读全文
摘要:written on 2022-05-05 洛谷题目传送门 第一次看到这类题目,显然丝毫没有下手之处。但其实这是一道套路题,这道题就用来总结经验好了。 原题操作:把相邻两个 变成 或把相邻两个 变成 。定义 到 的距离为 最少操作次数 使得 变
阅读全文
摘要:written on 2022-05-02 魔法少女LJJ 愚蠢至极的模板题,调了几百年! 内容部分,其他的没什么好说的,就是要注意:因为只要维护相对大小关系,所以将极有可能爆掉的乘法转为对数(浮点数),然后相加。 8,9操作不用理会 至于细节与心得: 动态开点不用离散化!!!!最后的两个小时发现就
阅读全文
摘要:written on 2022-05-02 传送! 问题我想留在开头:为什么主席树的空间开45倍都过不了,要开50? 题目最大的困难在于有深度限制,而且强制在线,否则就是裸的线段树合并了 既然题目大胆地给了深度限制,那么这题大胆的正解~~之一~~就是把点按照深度从小到大排序,用主席树来维护区间和。
阅读全文
摘要:written on 2022-05-02 here 这类题最显著的特征是询问只有一个点,并且与相对大小有关。这种时候就可以采用这样的做法: 将普通序列问题转化为01问题,以此在一般的线段树(以序列下标为下标)上维护信息获得高效解答。 转为01问题,意思就是大于等于某数的写为1,小于的写为0. 二分
阅读全文
摘要:written on 2022-05-02 A题数学推导题,~~但是因为数学太菜所以只会~~打表找规律。答案的递推公式是 。正解是化简以后用佩尔方程找递推式。佩尔方程以后再补,先放一个链接。找到递推式以后,就能用高精模拟求解了 B题是博弈论的题,题目若
阅读全文
摘要:written on 2022-04-28 比赛传送门 (图论专场) 首先,这个~~交了13遍才过的~~A题,让我不由得感慨输入的重要性。。 先上样例和题面的样例描述: The input contains several data sets in text format. Each data se
阅读全文
摘要:written on 2022-04-22 传送门 这是一道很有价值的题目,也是同类型题目中一道基础题 题目所给条件可以转化为: 给定(a,c),(a,d),(b,c) 那么(b,d)自动出现 这些都是二元关系,二元关系一多,就是暗示我们要考虑建图。那么想象现在有四个点 , , $c
阅读全文
摘要:written on 2022-04-22 二分图的几种题型,总结如下: 二分图判定 染色法,用 dfs 对每个点进行染色,看看有没有矛盾的 bool check(int x) { for(int i=head[x];i;i=nxt[i]) { int y=ver[i]; if(col[y]) {
阅读全文
摘要:written on 2022-04-22 题目描述: 有n个房间,由n-1条隧道连通起来,从结点1出发,开始走,在每个结点i都有3种可能: 1.被杀死,回到结点1处(概率为ki) 2.找到出口,走出迷宫 (概率为ei) 3.和该点相连有m条边,随机走一条 求:走出迷宫所要走的边数的期望值。 PS:
阅读全文
摘要:written on 2022-04-22 题目描述: 有一个含有M*N个格子的矩形,每次随机两个点(x1,y1)(x2,y2),把这两个点构成的子矩阵内的格子都染色。随机染K次,求最后被染色格子的期望个数。 期望题,拿到题目后,因为是求被染色的格子的期望个数,那么这个期望显然就是每个格子被染色的概
阅读全文
摘要:written on 2022-04-13 树形背包题,写一篇题解总结一下 题意:给一棵 个节点的树, 节点编号为1 ~ , 每条边都有一个花费值. 有 个机器人从 点出发, 问让机器人遍历所有边,最少花费值多少? 因为树形背包的题确实做得不多,掌握的不是很好,刚开始
阅读全文
摘要:written on 2022-03-26 通过这道题,我对查询一段区间内小于给定值的数的个数这样的题型有了较好的认识 比赛的时候,其实已经想到了要处理出每一个位置,它的前一个需要依存的数的位置,这个用单调栈直接模拟即可,是 的,然后对于每一个区间,看看比 小的数有几个 那么现
阅读全文
摘要:written on 2022-02-22 这题很有意思,~~因为我以前从来没有用这种写法写过题~~。 题目要求的是区间内可匹配的括号数。 直接思路是用栈在区间内模拟,加上切分操作,亲测可拿 。 正解是用 线段树 维护,维护什么呢? 注意到题目要求的是区间内可匹配的括号数,直接求肯定
阅读全文
摘要:written on 2022-02-21 因为第一次写字符Hash,所以贴一个类模板,当做入门 #include<bits/stdc++.h> typedef unsigned long long ull; using namespace std; const int base=131; int
阅读全文
摘要:written on 2022-02-18 这是一道dp题 首先,我们可以稍微的用自己的语言描述一下题意: 有n个二进制数,对于每一个,找到满足条件的带权值的数,使得自己是这个数的子集,n个数相差的二进制数位相加的和恰好为k 经过思考,我们可以发现,题目有判断是否存在的要求,所以可以用可行性dp先进
阅读全文
摘要:written on 2022-02-06 ~~关于区间dp的话,其实自己还懂得不是特别多~~ 所以第一篇luogu博客就交给 关路灯 这道练习区间dp和dp转移的好题好了 首先审题,对于一道可能作为动态规划的题目来说,我们应该先去关注的是:一个状态是从何而来的 我们发现,这个人来回走动去关路灯,每
阅读全文
摘要:written on 2022-03-20 通过这次的计数dp,我学到了许多 计数dp是一个很大的板块,里面的题型很多样,许多题目还要和组合数学结合在一起求解 接下来 是具体题目分析 A题相对来说比较基础了,属于入门dp,预处理出因数,然后进行转移即可。~~评测机跑得快这样就能直接过~~ B题概率d
阅读全文