自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CRTorlonia的博客

我永远喜欢伊莉雅

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

原创 set《题》

CF 878C LOJ 6302 WerKeyTom_FTD 51Nod1614 LOJ 547 Luogu 2542 Luogu 2317 Luogu 2917

2018-04-01 09:30:18 220

原创 set 易错点

LCT: 如果LCT要维护区间信息,则access,cut,rotate这种直接修改父子关系的操作,一定要随时update,cut操作完就update,access每循环一次都要update,rotate先update(y)再update(x)AC自动机: 建AC自动机时,要事先把root的所有孩子先塞进队列里面,我也不知道为什么 必须死记硬背的那一部分int v=ch[u][i],...

2018-04-28 10:18:44 185

原创 【HAOI2012/BZOJ2752】高速公路 线段树

原题走这里由于本题中的询问是等概率选取两个收费站,因此期望花费就等于所有可能花费之和除以可能性数,即:∑l≤i≤j≤r−1s(i,j)(r−l)(r−l+1)2∑l≤i≤j≤r−1s(i,j)(r−l)(r−l+1)2\frac{\sum_{l\le i\le j\le r-1}s(i,j) }{\frac{(r-l)(r-l+1)}{2}} 其中s[i][j]是第iii到jjj个区间的长度...

2018-04-23 22:06:47 238

原创 【NOI2010/BZOJ2005】能量采集 莫比乌斯反演

原题走这里这其实是我的第一道认真做的莫比乌斯反演题经过观察发现,位于(x,y)(x,y)(x,y)的植物的能量损失为gcd(x,y)−1gcd(x,y)−1gcd(x,y)-1 于是我们发现,原题实际上就是在让我们求∑i=1n∑j=1m(2∗gcd(i,j)−1)=2∗∑i=1n∑j=1mgcd(i,j)−n∗m∑i=1n∑j=1m(2∗gcd(i,j)−1)=2∗∑i=1n∑j=1mg...

2018-04-19 20:32:48 304

原创 【51Nod1766】树上的最远点对 线段树+LCA

原题走这里正解:对于每个询问以a~b,c~d之间的点为关键点建虚树,然后枚举a到b中的每一个点,bfs求最长路即可原题中存在区间询问,因此八成会扯到数据结构,尤其是线段树。 然而……线段树维护区间最长路?首先我们有这样一个结论: 对于两棵树,设它们的直径/最长路分别为(a,b)(a,b)(a,b)和(c,d)(c,d)(c,d), 则两棵树合并成新树后,最长路的端点也必然在a,b...

2018-04-15 21:45:56 324

原创 【SDOI2014/BZOJ3530】数数 AC自动机+数位DP

原题走这里数位DP+AC自动机似乎是常见套路? 首先题目一看就能想到数位DP。同时题目还涉及到多模式串匹配,于是又要用到AC自动机。 于是,我们可以初步得到状态d[i][j]d[i][j]d[i][j],表示当前在第i位,在AC自动机中匹配到第j个节点时的方案数。 然而有以下几个问题: 第一,题目要求的是比n小的满足条件的数的个数,按照经典做法,我们应该加一维表示第i位之前是否与n相同...

2018-04-15 12:11:37 228

原创 【HNOI2017/BZOJ4827】礼物 FFT

原题走这里原题相当于求∑(a[i]−b[i]+C)2∑(a[i]−b[i]+C)2\sum(a[i]-b[i]+C)^2,其中b可以任意旋转,C为整数,由于原题中有a,b小于m的限制条件,所以C范围最大也大不过(−m,m)(−m,m)(-m,m)。 那么我们可以把式子拆开: ∑i=0n−1(a[i]2+b[i]2−2∗a[i]∗b[i]+2∗C(a[i]−b[i])+C2)∑i=0n−1(...

2018-04-15 11:12:02 226

原创 【HAOI2012/Luogu2505】道路 最短路DAG

原题走这里本题的整个思想十分暴力。 首先,既然最多只有1500个点,那么就可以枚举最短路的起点,然后把最短路的条数累加到各条边上就可以了。 然而,枚举出每一条最短路再累加明显是不现实的,于是我们还需要另一个东西:最短路DAG最短路DAG,说白了就是由一张图上所有的以某个节点为起始点的最短路构成的图。 或者更加抽象一点就是所有满足dis[v]=dis[u]+a[u][v]dis[v]=...

2018-04-15 10:20:18 361

原创 【POI2010/Luogu3502】CHO-Hamsters AC自动机+矩阵乘法

原题走这里原来矩阵乘法还能这么用的嘛??!!——看完题解后的我首先,题目中很重要的一句话是字符串之间不相互覆盖。 这意味着在最终解里面字符串一定是依次出现的。 那么我们可以预处理出dis[i][j]dis[i][j]dis[i][j],表示将j放在i后面会增加的字符数。 这里可以用AC自动机进行预处理,建好AC自动机之后,从每个字符串结尾,按照fail指针向后找就可以了。接着怎么...

2018-04-15 09:34:06 269

原创 【NOIP2013/Luogu1979】华容道 最短路

原题走这里一看到这道题, 首先可以用脚指头想到, 既然目标是让指定棋子移到目标位置上, 那么决定棋盘状态的就只有指定棋子的位置和空格的位置两个因素。接着,可以用手指头想到, 既然,指定格子只有在周围有空格时才能动, 那么实际上状态就只有棋子的位置,以及空格在棋子的哪个方向。 共4nm4nm4nm个,对每个状态建点。接着我们会发现,对于一个棋盘状态,有两种转移: 1.让棋子...

2018-04-14 17:58:49 261

原创 【SHOI2009/luogu2159】舞会 DP+容斥+高精度

原题走这里应该是本人做过的第一道DP+容斥了,容斥原理博大精深啊……原题问的是至多k对女比男高的情况,我们可以先考虑 至少 k对女比男高的情况,然后用容斥来转化。首先,让男生女生按身高排序。 设d[i][j]d[i][j]d[i][j]为前iii个女生中已经确定有jjj个女生比对应的男生高的情况下,这jjj个女生的配对情况数,其它女生暂时不考虑。 则得出d[i][j]的转移方程: ...

2018-04-09 07:50:41 324

原创 【HDU3480】Division 斜率优化/四边形不等式优化

原题走这里首先很容易想到给原数组排序,于是最大值和最小值就变成最左和最右。明显是选取连续的区间最优,于是原问题就转化为了区间DP,设前iii个中选取jjj个区间的最优解为d[i][j]d[i][j]d[i][j],转移方程: d[i][j]=min(d[i−1][k]+(s[j]−s[k])2)d[i][j]=min(d[i−1][k]+(s[j]−s[k])2)d[i][j]=min(d[...

2018-04-08 13:49:02 267

原创 【FJOI2007/BZOJ1002】轮状病毒 找规律+高精度

原题走这里一看题……矩阵树定理秒杀…… 等等……我连行列式都不会求用什么矩阵树定理…… 于是就只能推式子了。让我们暂时先把环剖成链,于是问题就变成了一个类似整数剖分的形式: d[i]=∑j=1i−1d[j]∗(i−j)d[i]=∑j=1i−1d[j]∗(i−j)d[i]=\sum_{j=1}^{i-1}d[j]*(i-j) 要乘上i−ji−ji-j的原因在于每划分出一个大小为i−j...

2018-04-07 22:11:26 300

原创 【SHOI2007/BZOJ1933】书柜的尺寸 dp

原题走这里 目前见过的DP中算是思维难度比较大的了,其主要原因在于我太菜了本题问的是书柜总高度*书柜长度的最小值,这种情况下,我们应当将其中一个作为状态,另外一个作为代价,然后统计得到最小值。 于是,我们就可以把状态设为d[i][j][k]d[i][j][k]d[i][j][k],表示前iii本书,三层书架长度分别为j,k,sum[i]−j−kj,k,sum[i]−j−kj,k,sum[i...

2018-04-07 18:26:56 448

原创 【SDOI2009/BZOJ1879】Bill的挑战 状压DP

原题走这里 一看数据范围就知道是状压 首先预处理出s[i][j]即n个字符串的第i位与字母j的匹配状态 设d[i][S]为前i个字母匹配状态为S的情况下的方案 然后对于每个状态枚举下一位是多少就可以了 最后统计一波~~~AC代码如下:#include <bits/stdc++.h>#define MOD 1000003using namespace std;...

2018-04-07 17:34:19 213

原创 【NOIP2015/luogu2680】运输计划 二分+树上差分

原题走这里本题求的是改造后,使得所有路线的最大值最小。 一看到最大值最小,立刻想到二分答案,我们可以二分所有路线中最长的一条,设为x,判断是否可能通过改造,使得所有路线都小于等于x。问题就被转化为了判定性问题。接着就是是判断可行性:为了判断可行性,我们要找到这样一条边,使得 1)它被所有大于x的路径包含, 2)原最长路线-本边长度<=x,即改造本边可以可以是所有路径长度都减到x...

2018-04-07 15:54:39 278

原创 【NOI2007/BZOJ1494】生成树计数 插头DP

原题走这里一看数据范围就知道是矩阵快速幂优化 首先,设当前点为iii, 接着就会发现,iii不可能与i−Ki−Ki-K之前的点相连, 因此当前点的连通性只与i−Ki−Ki-K到i−1i−1i-1共K个点的连通性有关。 于是我们可以用d(i,S)d(i,S)d(i,S)来表示当前点为iii,连通性为SSS的情况时的情况数。 使用最小表示法,能够把连通性实质上不同的情况优化到只剩五十几种...

2018-04-01 19:33:40 340

空空如也

空空如也

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

TA关注的人

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