自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

y_immortal的博客 QwQ(qdez_ymh)

一个濒临退役的OIer

  • 博客(12)
  • 收藏
  • 关注

原创 洛谷3261 [JLOI2015]城池攻占 (可并堆+左偏树)

一道yy好题。qwq首先根据题意,不难发现,我们要对于每个点维护一个小根堆,然后每次对于每一个点来说,如果当前的堆顶的骑士的攻击力小于城池的生命值,那就弹出栈。但是对于修改操作,我们应该怎么做呢?其实可以直接像线段树那样,类似打标记的方式去做,但是记得要多pushdownpushdownpushdown几次来避免一些玄学错误。nline void pushdown(int x){ ...

2019-01-23 20:07:56 208

原创 洛谷1552 [APIO2012]派遣 (可并堆+左偏树)

果然我已经是啥题都不会的人了qwq首先,题面描述的有点花里胡哨首先,对于原题的上下级关系构成了一棵树,那么实际上,我们对于一个节点,就是求他的子树内部,最大化忍者的数目满足总薪水小于等于给定值。qwqqqqq那么应该怎么做呢。我们可以对于每个节点,维护一个按照薪水排序的大根堆,然后同时维护堆里面的元素的个数以及和,如果当前的和超过了限制,那么优先弹出总薪水比较大的,因为只有数目才会影响最...

2019-01-23 16:14:21 142

原创 洛谷2713 罗马游戏(可并堆,左偏树)

模板题没什么好说的。// luogu-judger-enable-o2#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<vector>#include<queue>#include<cmath&g

2019-01-21 21:42:45 174

原创 洛谷3377 左偏树(可并堆)学习笔记

qwq左偏树真是个神奇的东西我还是wei的啊首先可并堆,顾名思义,就是支持合并的堆。这里我们用左偏树来实现这个过程。我们定义dis[i[dis[i[dis[i[表示iii这个节点最近的一个叶子距离这个点的长度是多少。那么左偏树满足一个节点的左儿子的disdisdis大于等于右儿子。除此之外,左偏树还具有一些别的性质1.具有堆的性质2.当前节点的距离等于右儿子的距离+1。(因为左偏树,...

2019-01-21 21:40:26 167

原创 洛谷5024 保卫王国 (动态dp)

qwq非正解。但是能跑过。1e5 log方还是很稳的啊首先,考虑最普通的dpdpdp令dp1[x][0]表示不选这个点,dp1[x][1]表示选这个点的最大最小花费dp1[x][0]表示不选这个点,dp1[x][1]表示选这个点的最大最小花费dp1[x][0]表示不选这个点,dp1[x][1]表示选这个点的最大最小花费那么dp1[x][0]=∑dp[p][1]dp1[x][0]=\su...

2019-01-21 09:44:52 167

原创 洛谷4631 [APIO2018] Circle selection 选圆圈 (KD树)

qwq纪念AC450一开始想这个题想复杂了。首先,正解的做法是比较麻烦的。qwqq那么就不如来一点暴力的东西,看到平面上点的距离的题,不难想到KD−TreeKD-TreeKD−Tree我们用类似平面最近点对那个题一样的维护方式,对于一个子树内部,分别维护每一个维度的最大值和最小值,还有半径的最大值。然后sortsortsort一遍,从半径大到小依次queryqueryquery,每次q...

2019-01-16 21:13:12 348

原创 bzoj5210最大连通子块和 (动态dp+卡常好题)

卡了一晚上,经历了被卡空间,被卡T,被卡数组等一堆惨惨的事情之后,终于在各位大爹的帮助下过了这个题qwqqq(全网都没有用矩阵转移的动态dp,让我很慌张)首先,我们先考虑一个比较基础的dpdpdp我们令dp1[i]dp1[i]dp1[i]表示必须选iii的最大连通块的权值是多少。然后令ans1[i]ans1[i]ans1[i]表示iii的子树中的dp1dp1dp1的最大值。那么该怎么计算...

2019-01-16 11:40:42 356

原创 bzoj4712 洪水(动态dp)

看起来很模板的一个题啊qwq但是我还是wei题目要求的是一个把根节点和所有叶子断开连接的最小花费。还是想一个比较naivenaivenaive的做法我们令dp1[i]dp1[i]dp1[i]表示,在iii的子树内,把叶子全都隔断的最小代价,那么dp1[i]=max(∑dp1[p],val[i])dp1[i]=max(\sum dp1[p],val[i])dp1[i]=max(∑dp1[...

2019-01-15 14:31:08 213

原创 洛谷4719 【模板】动态dp 学习笔记(ddp 动态dp)

qwq大概是混乱的一个题。首先,还是从一个比较基础的想法开始想起。如果每次暴力修改的话,那么每次就可以暴力树形dp令dp[x][0/1]dp[x][0/1]dp[x][0/1]表示xxx的子树中,是否选择xxx这个点的最大权独立集。如果这个点不选,那么他的所有儿子都是可以选的。如果这个点选的,那么只能加上他的所有儿子不选的收益。因为收益可能存在负数,所以要特别处理一下void dfs...

2019-01-14 21:54:35 308

原创 洛谷4895 独钓寒江雪 (树哈希+dp+组合)

qwq首先,如果是没有要求本质不同的话,那么还是比较简单的一个树形dp我们令dp[i][0/1]dp[i][0/1]dp[i][0/1]表示是否iii的子树,是否选iii这个点的方案数。一个比较显然的想法。dp[i][0]=∏(dp[p][0]+dp[p][1])dp[i][0]=\prod (dp[p][0]+dp[p][1])dp[i][0]=∏(dp[p][0]+dp[p][1])...

2019-01-14 20:53:19 168

原创 CF739E Gosha is hunting(费用流/凸优化dp)

纪念合格考爆炸。其实这个题之前就写过博客了,qwq但是不小心弄丢了,所以今天来补一下。首先,一看到球的个数的限制,不难相当用网络流的流量来限制每个球使用的数量。由于涉及到最大化期望,所以要使用最大费用最大流。我们新建两个点ss,ttss,ttss,tt,分别表示两种球。那么我们现在考虑应该怎么计算期望呢。首先,如果假设如果对于一个怪物用一个球,那么连边也就比较容易了对于一个怪物xxx...

2019-01-14 18:58:56 341

原创 CF125E MST company (凸优化+MST)

qwq自闭的一个题首先,我们可以把原图中的边,分成两类,一类是与111相连,另一类是不与111相连。原题就转化成选择kkk条关键边的MSTMSTMST那么我们可以按照tree I 那个题的思路来考虑这个题。由于是MSTMSTMST,所以函数满足下凸,那么对于这种恰好选kkk个的问题,我们可以直接凸优化。erferferf一个值,然后把所有与1相连的边都加上这个值。通过排序的时候把同权值...

2019-01-01 09:37:40 541

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除