自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

转载 数位 dp 总结

T1:不要 62题干:  杭州人称那些傻乎乎粘嗒嗒的人为 $62$(音:$laoer$)。  杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。  不吉利的数字为所有含有 $62$ 或 $4$ 的号码。例如: $62315$、$73418$、$88914$ 都...

2019-08-06 21:43:00 165

转载 关押罪犯(并查集)

题干:  $S$ 城现有两座监狱,一共关押着 $N$ 名罪犯,编号分别为 $1~N$ 。他们之间的关系自然也极不和谐。很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突。我们用“怨气值”(一个正整数值)来表示某两名罪犯之间的仇恨程度,怨气值越大,则这两名罪犯之间的积怨越多。如果两名怨气值为 $c$ 的罪犯被关押在同一监狱,他们俩之间会发生摩擦,并造成影响力为 $c$ 的冲突...

2019-08-04 21:45:00 255

转载 KD-tree 总结

T1:Hide and Seek题干:  小猪 $iPig$ 在 $PKU$ 刚上完了无聊的猪性代数课,天资聪慧的 $iPig$ 被这门对他来说无比简单的课弄得非常寂寞,为了消除寂寞感,他决定和他的好朋友 $GiPi$(鸡皮)玩一个更加寂寞的游戏---捉迷藏。 但是,他们觉得,玩普通的捉迷藏没什么意思,还是不够寂寞,于是,他们决定玩寂寞无比的螃蟹版捉迷藏,顾名思义,就是说他们在玩...

2019-08-04 20:51:00 139

转载 dp 杂题

T1:消失之物题干:  $ftiasch$ 有 $N$ 个物品, 体积分别是 $W_1, W_2, ..., W_N$。 由于她的疏忽, 第 $i$ 个物品丢失了。 “要使用剩下的 $N - 1$ 物品装满容积为 $x$ 的背包,有几种方法呢?” -- 这是经典的问题了。  她把答案记为 $Count(i, x)$ ,想要得到所有 $1 <= i <= N$, $...

2019-07-30 21:32:00 141

转载 插头 dp 总结

tip:  插头 dp 主要用来处理一系列基于连通性状态压缩的动态规划问题,处理的具体问题有很多种,并且一般数据规模较小。由于棋盘有很特殊的结构,使得它可以与“连通性”有很强的联系,因此插头 dp 最常见的应用要数在棋盘模型上的应用了。实战:T1:Ural 1519 Formula 1题干:  一个 m * n 的棋盘,有的格子存在障碍,求经过所有非障碍格子的哈密顿回...

2019-07-28 21:42:00 523

转载 CDQ 总结

tip:  CDQ 分治主要处理三维偏序问题,解题时主要是找出比较量(三个或两个),并找出适当排序顺序(有时不需))。    CDQ 分治常常与树状数组搭配,树状数组主要用来统计前缀和(权值前缀和 / 排名)、最值、逆序对。实战:T1:陌上花开题干:  有 n 朵花,每朵花有三个属性:花形 (s)、颜色 (c)、气味 (m),用三个整数表示。现在要对每朵花评级,一朵花...

2019-07-27 07:10:00 297

转载 图论总结

Tarjan:pre:1、$dfn[x]$ 为时间戳,表示访问这个节点时已经 dfs 了 $dfn[x]-1$ 个节点,它为第 $dfn[x]$ 个被访问的节点。2、$low[x]$ 为一个最小值,表示这个节点隶属于哪一个强连通分量(每一个 low 值都是以第一个被访问的在这个强连通分量中的节点时间戳为下标)(单独一个节点也为强连通分量)3、$sta[x]$ 为一个栈,它...

2019-07-26 08:12:00 101

转载 bsgs总结

tip:  bsgs用来求解形如 $B^L == N(mod P)$ 的式子(求解 $L$ )。实战:T1:Discrete Logging(板子)Code: 1 #include<cstdio> 2 #include<cstring> 3 #include<cmath> 4 #include<map> ...

2019-07-24 08:15:00 93

转载 Prufer 序列

tip:  Prufer 序列将一棵树表示成了一个长度为 节点数 -2 的序列,且每个 Prufer 序列对应且只对应一棵树。性质:  1、每个节点在 Prufer 序列中出现的次数就是 这个节点的度数 -1。  2、n 个点构成的无根树的个数: $n^{n-2}$   3、确定 n 个点度数分别为 d1,d2 … 时无根树个数:$(n-2)!/((d1-1)!*(d...

2019-07-24 07:45:00 94

转载 卡特兰数总结

tip:  卡特兰数是组合数学中经常出现在计数问题的数列,出栈次序是卡特兰数的一个应用。 我们将入栈视为 +1,出栈视为 -1,则限制条件为在任意位置前缀和不小于 0。   卡特兰数公式:  卡特兰数前几项为:1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2...

2019-07-21 21:07:00 133

转载 relays 奶牛接力跑(矩阵快速幂求最短路径)

题干:  FJ的N(2<=N<=1,000,000)头奶牛选择了接力跑作为她们的日常锻炼项目。至于进行接力跑的地点 自然是在牧场中现有的T(2 <= T <= 100)条跑道上。农场上的跑道有一些交汇点,每条跑道都连结了两个不同的交汇点 I1_i和I2_i(1<=I1_i<=1,000; 1<=I2_i<=1,000)。每个交汇点都是至...

2019-07-17 17:44:00 183

转载 RMQ小总结

RMQ是一种在线求区间最值的算法。求法:1 void rmq_init(){2 for(int i=1;i<=N;i++) dp[i][0]=a[i];3 for(int j=1;(1<<j)<=N;j++)4 for(int i=1;i+(1<<j)-1<=N;i++)5 ...

2019-07-17 16:27:00 88

转载 树上染色(树上背包dp + 复杂度分析)

题干:  有一棵点数为 N 的树,树边有边权。给你一个在 0∼N 之内的正整数 K,你要在这棵树中选择 K 个点,将其染成黑色,并将其他的 N−K 个点染成白色。将所有点染色后,你会获得黑点两两之间的距离加上白点两两之间距离的和的收益。问收益最大值是多少。题解:  首先,看到黑点到黑点、白点与白点,其实这就告诉我们黑点与白点是可以整体互换的(可以由黑点染成白色变为白点染成黑色...

2019-07-15 21:47:00 615

转载 map小总结

map的基本操作函数: C++ maps是一种关联式容器,包含“关键字/值”对 begin() 返回指向map头部的迭代器 clear() 删除所有元素 count() 返回指定元素出现的次数 empty() 如果map为空则返回true end() 返回指向...

2019-07-15 06:12:00 67

转载 「POJ2942」 Knights of the Round Table(二分图 交叉染色+ 点双连通分量)

题干:  亚瑟王要在圆桌上召开骑士会议,为了不引发骑士之间的冲突,并且能够让会议的议题有令人满意的结果,每次开会前都必须对出席会议的骑士有如下要求:  1、相互憎恨的两个骑士不能坐在直接相邻的2个位置;  2、出席会议的骑士数必须是奇数,这是为了让投票表决议题时都能有结果。  如果出现有某些骑士无法出席所有会议(例如这个骑士憎恨所有的其他骑士),则亚瑟王为了世界和平会强制把他剔除出骑...

2019-07-14 12:22:00 89

转载 Redundant Paths 分离的路径(边双连通分量)

题干:  为了从F(1≤F≤5000)个草场中的一个走到另一个,贝茜和她的同伴们有时不得不路过一些她们讨厌的可怕的树.奶牛们已经厌倦了被迫走某一条路,所以她们想建一些新路,使每一对草场之间都会至少有两条相互分离的路径,这样她们就有多一些选择.每对草场之间已经有至少一条路径.给出所有 R ( F - 1 ≤ R ≤ 10000 )条双向路的描述,每条路连接了两个不同的草场,请计算最少的新建...

2019-07-14 11:48:00 334

转载 bzoj2208 [Jsoi2010] 连通数(tarjan点双连通分量 // dfs)

题干:题解:  本题也就是 一个有向图,题干中也没有说是否有环,我们就需要tarjan缩一下点(有向图缩点需要判断是否在队中),再进行操作。 100% 7000ms  dfs暴搜。枚举1~n 不断 dfs 求子树大小,统计答案。Co...

2019-07-14 08:46:00 124

转载 [bzoj3331] [BeiJing2013] 压力(tarjan 点双连通分量)

题干:  这世界上有N个网络设备,他们之间有M个双向的链接。这个世界是连通的。在一段时间里,有Q个数据包要从一个网络设备发送到另一个网络设备。一个网络设备承受的压力有多大呢?很显然,这取决于Q个数据包各自走的路径。不过,某些数据包无论走什么路径都不可避免的要通过某些网络设备。你要计算:对每个网络设备,必须通过(包括起点、终点)他的数据包有多少个?  对于40%的数据,N,M,Q≤...

2019-07-14 08:18:00 151

转载 [ BZOJ1123 ] BLO(tarjan点双连通分量)

题干:  Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 所有towns连通。输出n个数,代表如果把第i个点去掉,将有多少对点不能互通。题解:  本题要求求去掉第 i 个点后消失了多少对节点。(关于加减节点的问题就容易想到点双连通分量)  拿到这道题,作者首先想到的就是每去掉一个点,就会少...

2019-07-14 07:13:00 194

转载 bitset小总结

bitset 主要存储二进制数位。bitset 就像一个 bool 类型的数组一样,但是有空间优化—— bitset 中的一个元素只相当于一个 char 元素所占空间的八分之一。bitset 中的每个元素都能单独被访问,例如对于一个叫做 x 的bitset,表达式 x[3] 访问了它的第 4 个元素,就像数组一样。bitset 有一个特性:整数类型和布尔数组都能转化成 bit...

2019-07-13 18:41:00 121

转载 Journeys(权值线段树优化建图)

题干:  Seter建造了一个很大的星球,他准备建造N个国家和无数双向道路。N个国家很快建造好了,用1..N编号,但是他发现道路实在太多了,他要一条条建简直是不可能的!于是他以如下方式建造道路:(a,b),(c,d)表示,对于任意两个国家x,y,如果a<=x<=b,c<=y<=d,那么在x y之间建造一条道路。Seter保证一条道路不会修建两次,也保证不会有一...

2019-07-13 07:57:00 112

转载 NOIP2016 天天爱跑步(树上差分)

题干:  《天天爱跑步》游戏的地图可以看作一棵包含 n 个结点和 n−1 条边的树,每条边连接两个结点,且任意两个结点存在一条路径互相可达。树上结点编号为从 1 到 n 的连续正整数。现在有 m 个玩家,第 i 个玩家的起点为 Si ,终点为 Ti​​。每天打卡任务开始时,所有玩家在第 0 秒同时从自己的起点出发,以每秒跑一条边的速度,不间断地沿着最短路径向着自己的终点跑去,跑到终点后...

2019-07-13 07:01:00 179

转载 [ZJOI2006]物流运输(最短路 + 区间dp)

题干:  物流公司要把一批货物从码头 A 运到码头 B。由于货物量比较大,需要 n 天才能运完。货物运输过程中一般要转停好几个码头。物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格的管理和跟踪。由于各种因素的存在,有的时候某个码头会无法装卸货物。这时候就必须修改运输线路,让货物能够按时到达目的地。但是修改路线是一件十分麻烦的事情,会带来额外的成本,因此物流公司希望能够订一...

2019-07-12 19:11:00 113

转载 太鼓达人(欧拉图——暴力dfs)

题干:  鼓的主要元件是M个围成一圈的传感器。每个传感器都有开和关两种工作状态,分别用1和0表示。显然,从不同的位置出发沿顺时针方向连续检查K个传感器可以得到M个长度为K的01串。Vani知道这M个01串应该是互不相同的。而且鼓的设计很精密,M会取到可能的最大值。现在Vani已经了解到了K的值,他希望你求出M的值,并给出字典序最小的传感器排布方案。题解:  这道题水得我头皮发...

2019-07-12 18:23:00 273

转载 tree(Kruskal + 二分)

题干:  给你一个无向带权连通图,每条边是黑色或白色。让你求一棵最小权的恰好有need条白色边的生成树。题目保证有解。  第一行V,E,need分别表示点数,边数和需要的白色边数。  接下来E行,每行s,t,c,col表示这边的端点(点从0开始标号),边权,颜色(0白色1黑色)。  V<=50000,E<=100000,所有数据边权为[1,100]中的正整数。题解:  先看下...

2019-07-12 17:45:00 101

转载 [bzoj2427] [HAOI2010] 软件安装(强连通分量)(树形背包DP)

题干:  现在我们的手头有N个软件,对于一个软件 i,它要占用Wi的磁盘空间,它的价值为Vi。我们希望从中选择一 些软件安装到一台磁盘容量为M计算机上,使得这些软件的价值尽可能大(即 Vi 的和最大)。但是现在有个问题:软件之间存在依赖关系,即软件i只有在安装了软件j(包括软件j的直接或间接依赖)的情况下才能正确工作(软件 i 依赖软件 j )。幸运的 是,一个软件最多依赖另外一个软件。...

2019-07-12 07:15:00 65

转载 约会 Rendezvous (基环树(内向) + tarjan缩点 + LCA)

题干:  给定一个有 n 个顶点的有向图,每个顶点有且仅有一条出边。每次询问给出两个顶点 ai 和 bi​​,求满足以下条件的 xi​​ 和 yi:  1、从顶点 ai 沿出边走 xi 步与从顶点 bi 沿出边走 yi 步到达的顶点相同时,max(xi,yi) 最小。  2、满足以上条件的情况下 min(xi,yi) 最小。  3、如果以上条件没有给出一个唯一的解,则还需要满足 xi≥y...

2019-07-11 20:27:00 214

转载 [ZJOI2007]矩阵游戏(匈牙利)

题干:  小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏——矩阵游戏。矩阵游戏在一个N*N黑白方阵进行(如同国际象棋一般,只是颜色是随意的)。每次可以对该矩阵进行两种操作:  行交换操作:选择矩阵的任意两行,交换这两行(即交换对应格子的颜色)  列交换操作:选择矩阵的任意行列,交换这两列(即交换对应格子的颜色)  游戏的目标,即通过若干次操作,使得方阵的主对角线...

2019-07-11 19:35:00 136

转载 [HNOI2015]菜肴制作(toposort + 单队)

题干:  知名美食家小 A 被邀请至 ATM 大酒店,为其品评菜肴。ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予 1 到 N 的顺序编号,预估质量最高的菜肴编号为 1。由于菜肴之间口味搭配的问题,某些菜肴必须在另一些菜肴之前制作,具体的,一共有 M 条形如「i 号菜肴『必须』先于 j 号菜肴制作”的限制」,我们将这样的限制简写为 ⟨i,j⟩。  现在...

2019-07-11 19:21:00 120

转载 HDU 2222 Keywords Search(AC自动机)

题干:  给定n个长度不超过50的由小写英文字母组成的单词准备查询,以及一篇长为m的文章,问:文中出现了多少个待查询的单词。多组数据题解:  这是一道AC自动机的裸题(尽管你可以用hash+卡常A掉它。。。)。  AC自动机其实也就两个核心部分:fail指针(或数组)、trie图  1、fail指针(或数组)  其实AC自动机类似于KMP算法,由KMP的单...

2019-07-10 21:02:00 182

转载 「APIO2016」划艇 (dp+组合数+区间离散化)(考试)

题干:  在首尔城中,汉江横贯东西。在汉江的北岸,从西向东星星点点地分布着 N 个划艇学校,编号依次为 1 到 N。每个学校都拥有若干艘划艇。同一所学校的所有划艇颜色相同,不同的学校的划艇颜色互不相同。颜色相同的划艇被认为是一样的。每个学校可以选择派出一些划艇参加节日的庆典,也可以选择不派出任何划艇参加。如果编号为 i的学校选择派出划艇参加庆典,那么,派出的划艇数量可以在ai到bi之...

2019-07-10 16:31:00 124

转载 [CQOI2011]放棋子(组合数+dp)(考试)

题干:    输入第一行为两个整数n, m, c,即行数、列数和棋子的颜色数。第二行包含c个正整数,即每个颜色的棋子数。所有颜色的棋子总数保证不超过nm。N,M<=30 C<=10 总棋子数有大于250的情况。输出仅一行,即方案总数除以 1000000009的余数。题解:20%暴搜  考试时还被认真看着道题就结束了。。。本来我还可以暴搜dfs填表骗二十分。。...

2019-07-10 15:10:00 110

转载 [SDOI 2015] 排序(深搜+阶乘)(考试)

题干:  小A有一个1~2N的排列A[1..2N],他希望将数组A从小到大排序。小A可以执行的操作有N种,每种操作最多可以执行一次。对于所有的i(1<=i<=N),第i种操作为:将序列从左到右划分成2N-i+1段,每段恰好包含2i-1个数,然后整体交换其中的两段。小A想知道可以将数组A从小到大排序的不同的操作序列有多少个。小A认为两个操作序列不同,当且仅当操作的个数不同,或者...

2019-07-10 15:05:00 140

转载 [sdoi 2010][bzoj 1925]地精部落(dp)

题干:地精喜欢住在连绵不绝的山脉中。一座长度为N的山脉 H可分 为从左到右的N段,每段有一个独一无二的高度 Hi,其中Hi是1到N之间的正整数。 如果一段山脉比所有与它相邻的山脉都高,则这段山脉是一个山峰。位于边 缘的山脉只有一段相邻的山脉,其他都有两段(即左边和右边)。如果一段山脉比所有它相邻的山脉都低,则这段山脉是一个山谷。酒馆可以设立在山谷之中。地精还是一种非常警觉的生物,他们...

2019-07-04 12:19:00 98

转载 [转载] DeepinC . Mr_zkt 集合选数

我不生产代码,我只是题解的搬运工。。。(%DeepinC %Mr_zkt)题干:  一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得它们的交集的元素个数为K,求取法的方案数,答案模1000000007。(是质数喔~)题解:  写题解不只是为了写题解,重在讲思路,想直接看正解的兄台自行跳跃阅读。70%算法 ...

2019-07-01 10:15:00 146

转载 最基础图论总结(Spfa与Dijkstra)

1.Floyd  Floyd是先枚举转接点,从而达到更新最小值的目的。到后期好像O(n^3) 像闹着玩一样,但在一些n<=100的环境下还是很好用的。。。 1 inline void Floyd(int x){ 2 memset(dis,88,sizeof(dis)); 3 for(register int i=1,x,y;i<=m;+...

2019-06-30 17:39:00 205

转载 [Usaco2015 Feb] [Bzoj3942] Censoring

1.KMP版Censoring题干:  给出两个字符串 S 和 T,每次从前往后找到 S 的一个子串 A=T 并将其删除,空缺位依次向前补齐,重复上述操作多次,直到 S 串中不含 T 串。输出最终的 S 串。题解:  这是一道KMP入门题,像题目描述一样,KMP最主要的应用就是进行单模式匹配(给出一个母串与一个目标串进行匹配)。其实KMP的核心只有一个Next[]数组...

2019-06-30 15:42:00 235

空空如也

空空如也

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

TA关注的人

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