自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

薇小薇

”喵喵喵?“

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

原创 [BZOJ3243][NOI2013]向量内积(STL暴力)

题目:我是超链接题解:哇这个题用bitset直送50啊,k=2可以搞一搞,然后k=3小的也可以弄,这样有80啦 行了暴力我就很满意了 分析数据范围我觉得这个题应该是O(nd)的代码:80pts#include <bitset>#include <vector>#include <cstdio>#include <cstri

2018-05-31 18:52:32 263

原创 [BZOJ3240][NOI2013]矩阵游戏(十进制快速幂+矩阵乘法 / 数学相关)

题目:我是超链接题解:NOI老是考奇奇怪怪的数学题诶。。。 F(n,m)=a⋅F(n,m−1)+b=am−1F(n,1)+b+ab+...+am−2b=am−1c⋅F(n−1,m)+am−1d+b+ab+...+am−2bF(n,m)=a·F(n,m−1)+b=am−1F(n,1)+b+ab+...+am−2b=am−1c·F(n−1,m)+am−1d+b+ab+...+am−2...

2018-05-31 10:42:34 232

原创 [BZOJ2876][NOI2012]骑行川藏(导数+数学相关)

题目:我是超链接题解:题目就是让求∑kisi(vi−v′i)2<=Eu∑kisi(vi−vi′)2<=Eu\sum k_is_i(v_i-v_i')^2min∑sivimin∑sivimin{\sum {s_i\over v_i}} 我们先理解一下这道题目: 首先我们可以给所有路段随意分配一个速度 接下来,我们需要在一些路段上消耗更多能量来提速,以此来缩短一定的时...

2018-05-30 17:23:52 282

原创 [BZOJ2878][NOI2012]迷失游乐园(概率期望dp+图论)

题目:我是超链接题解:代码:

2018-05-30 11:29:37 303

原创 [BZOJ2879][NOI2012]美食节(时间费用流+动态加边)

题目:我是超链接题解:这题目一眼费用流了,以前好像有一道基本一样的题目 简单说也就是每个菜建一个点和源点连容量1,厨师*菜数个点表示第i个厨师倒数第j个菜 但是这个东西数据范围有点大,光点就是80000个,边多的上天了,根本不行。 考虑动态加边,首先对于每一道菜给每个厨师的倒数第一个菜连边,因为倒数第k个菜肯定比倒数第k+1个菜便宜。 每次增广路都只找一条最短路,所以对于这条找...

2018-05-29 15:22:36 256

原创 [BZOJ4659]Lcm(反演)

题目:我是超链接题解:题目中有三个条件,我们先不管第三个看起来很长的条件,那么就是让求。 ∑i=1n∑j=1mij(i,j)∑i=1n∑j=1mij(i,j)\sum_{i=1}^n\sum_{j=1}^m{ij\over (i,j)} 经过类似luogu3768的化简,我们得到的是∑T=1nsum(nT)sum(mT)T∑t|Tμ(t)t∑T=1nsum(nT)sum(mT)T∑...

2018-05-29 09:23:09 289

原创 [BZOJ3415][POI2013]Price List(图论删边)

题目:我是超链接题解:本来以为是一道sb题然后WA过了才知道是大神题。。。到达一个点有三种走法(窝一开始以为是两种) 1、一步步走a到达 2、当b < 2a,可以把两条a缩成一条b,如果是奇数就先走a 3、当b < a,这是一种很奇怪的走法,可以通过走更多的边数来换取较少的距离 比如这个图,到达距离为3的点可以走a+b,也可以走2b代码:...

2018-05-28 15:37:41 410

原创 [BZOJ5358][Lydsy1805月赛]口算训练(主席树)

题目:我是超链接题解:本来用的是map+线段树合并,然而所有质数到后面合并的话会有很多,T了 其实是个很明显的主席树了,每个点建一个树维护质因子个数,动态开点的特征可以保证空间,因为一个数最多有20个不同的质因子,查询的时候枚举质因子,算是一个常数了代码:#include <cstdio>#include <map>using namespac...

2018-05-27 20:20:34 457

原创 [BZOJ3590][SNOI2013]Quare(状压dp+边双连通分量)

题目:我是超链接题解:题目相当于是:在无向图中选出权值最小的包含所有点的双连通子图 双连通图可以拆为一个小双连通图和一条链,枚举这一条链就是整体思想 熟悉的数据范围,状压dp了?首先设计几个状态 f[i]表示状态为i,且使i中的点双联通的最小权值 h[i][j][0]表示一个端点为j,通往状态为i的点集中的最小权值 h[i][j][1]表示一个端点为j,通往状态为i的点集中的...

2018-05-27 08:34:46 403

原创 [BZOJ4650][NOI2016]优秀的拆分(hash/后缀数组+RMQ)

题目:我是超链接题解:95分的hash(为什么暴力分这么良心啊) 显然我们不需要找AABB的形式,只需要找到AA的形式就好了 l[i]表示i位及前面的有多少AA的形式,r[i]表示i+1位及以后有多少AA的形式 那么答案就是∑l[i]r[i]∑l[i]r[i]\sum l[i]r[i] 95就行了我hin满意了 感觉也是后缀家族的一员吧,讲解的话这个blog讲的特别好啊,...

2018-05-25 21:54:45 364

原创 [BZOJ2644][POJ3967]Ideal Path(分层图)

题目:我是超链接题解:首先先倒序bfs,求出所有可以到n的点的最短路,因为边权为1,可以构建一个分层图 然后正序bfs,对于每一层选出到达这一层的最小颜色,对于相等的颜色,我们把这些点都放进去进行下一轮代码:#include <queue>#include <cstdio>#include <cstring>#include &l...

2018-05-25 11:12:11 363

原创 [BZOJ4771]七彩树(主席树+STL)

题目:我是超链接题解:说起来颜色相同不同,有点像之前做过的AC自动机的题目【喵星人】 因为是用了树上容斥的方法,首先考虑没有深度限制的情况 先令每个点的贡献都是1,那么如果有同色点,他们的lca的贡献就-1,所以令同色点dfs序相邻的点贡献-1,然后答案就是子树和 考虑深度限制,我们搞个主席树,然后把深度为i的点挨个插进来即可(一次插进来一层),插的时候用set维护一下每个颜色的...

2018-05-24 18:30:58 305

原创 [BZOJ4974][Lydsy1708月赛]字符串大师(KMP)

题目:我是超链接题解:常识:一个前缀的最小循环节=i-next[i](如果有的话),所以我们已经知道了next。 next即KMP处理字符串的时候对应的下一位 如果当前的i!=a[i],就相当于已知循环节和循环的串求后面的某个位置,取个模就可以知道了 如果当前是i==a[i],可以考虑KMP的next数组构造,记录下哪些可以可以与前面的匹配从而构成循环节,删去这些字母找个最小的就...

2018-05-23 20:18:47 394

原创 [BZOJ2091][POI2010]The Minima Game(DP)

题目:我是超链接题解:这个东西感觉起来像dp,f[i]表示前i个先手拿的最大差值 先排序,f[i]=maxf[i−1],a[i]−f[i−1]f[i]=maxf[i−1],a[i]−f[i−1]f[i]=max{f[i-1],a[i]-f[i-1]} 这个方程自己看看就能明白了代码:#include <cstdio>#include <iostrea...

2018-05-23 11:29:08 225

原创 [CF834D]The Bakery(线段树优化dp)

题目:我是超链接题意:给出n个数字,将这些数字隔成k个部分(相对位置不变),统计每个部分有几个不同数字,然后全部加起来求和,问和最大是多少。题解:很容易看出DP方程:f[i][j]=maxf[k][j−1]+diff(k+1,i)f[i][j]=maxf[k][j−1]+diff(k+1,i)f[i][j]=max{f[k][j-1]+diff(k+1,i)},d∈[j−1,i...

2018-05-23 09:16:54 1052

原创 [BZOJ3997][TJOI2015]组合数学(递推)

题目:我是超链接题解:第一眼以为是网络流,这数据范围。。有点大啊 然而。。。结论:求一条从左下到右上的【最长】路径,大概可以证明这就是最少的次数。这个最长的定义表示如果他们不能在一行或一列上到达,就要计入权值。可以发现只要不是对角线【左下-右上】的关系都是可以在一次路径上到达的,只有对角线才不能互相到达,所以要单独记录值,那这个求最长路径也是可以理解的代码:#incl...

2018-05-21 21:26:25 303

原创 [BZOJ1974][SDOI2010]代码拍卖会(规律+DP)

题目:我是超链接题解:首先这个n特别大,而且这个转移怎么也是二维的,所以矩乘也不像。我们考虑拆一下这样一个【上升数】,11234=11111+111+11+1,每一个【上升数】被拆完之后不会超过9位,而且为了避免总共选0位有前导零,我们起初先填上11…111(共n位)。这样会发现一个规律:1,11,111,1111…这些数字%p会有一个循环节(循环节不一定是从第一位开始的!)。...

2018-05-21 19:26:48 282

原创 SDOI2018R2续命记

序(tan90°)一步Day -x(x>=1)因为知道自己很菜,国级的比赛根本不会摘金摘银,在大家都去CTSC/APIO的时候,窝还是在机房孑然一身,好吧还有zyz R2前差不多一个周就回家蹲着了,被盯着学习= =,看看以前做过的题窝怎么什么都不会啊Day 0因为不跟大部队一起,怎么去也是一个问题,最后窝的父母决定带着窝去,据说是如果退役了能有安慰QwQ,于是乎也不跟l...

2018-05-17 11:39:03 1236 9

原创 [BZOJ1095][ZJOI2007]Hide 捉迷藏(动态点分治)

题目:我是超链接题意:给出一棵树,树上的每个点有黑白两种状态,求树上最远两个黑点的距离。 会改变点的状态。题解:首先如果不是有修改的话直接就是裸的点分治了吧 首先回顾一下点分治,其实就是每次找重心,然后处理与重心相关的路径,时间复杂度的保证在于树高不会超过logn,那么对于一个点来说,最多被统计log次,如果统计是O(1),那么均摊时间复杂度是O(nlogn) 动态点分...

2018-05-09 14:49:08 344

原创 [BZOJ3219]巡游(二分+点分治+单调队列)

题目:我是超链接题意:找出一条长度[l,r]的中位数最大的路径。题解:还是使用二分,对于每条边的权值,如果>=mid就是1,< mid就是-1,如果一条路径的权值和>=0,证明这个中位数是合法的 别的就和昨天那个是一样的了? 但是我交上去是WA,网上找的AC代码配合下载下来的数据都是RE。。。。? 具体原因。。。。 代码:#in...

2018-05-07 21:42:20 263

原创 [BZOJ1758][WC2010]重建计划(01分数规划+点分治+单调队列)

题目:我是超链接题解:首先平均数最大,平均数其实是∑a∑1∑a∑1{\sum a\over \sum 1},求最值是01分数规划的问题 二分mid,如果有更优的值∑(a−mid)>0∑(a−mid)>0\sum (a-mid)>0,那么我们的check途径就是通过点分治判断长度在[l,r]区间内有没有一条链的和>0,链的长度为a[i]-mid而check的过程中...

2018-05-06 08:34:00 229

原创 [BZOJ4084][SDOI2015]双旋转字符串(hash)

题目:我是超链接题解:假设S是长度较长的集合。 将T中的串哈希,用map记录每个哈希值出现了多少次。 然后枚举S串,在map中找可以拼接的T串的个数。 串S由abc->cab是O(1)的 不要那么多次取模。代码:#include <map>#include <string>#include <cstdio>#inclu...

2018-05-04 15:28:36 375 1

原创 [BZOJ4598][SDOI2016]模式字符串(点分治+hash)

题目:我是超链接题解:树上路径用点分,很明显这里有两种方式,一种是正着的字符串,一种是倒着的字符串 所以我们在点分治的时候需要维护两个方向的路径,统计过顶点的路径 而且必须先统计再修改,不然有可能根本不经过根节点= = 而且我们在统计路径的时候,只关心是若干个模式串的前缀或后缀的路径 现在我们的问题就是:如何判断一个字符串是不是模式串的前缀或后缀。hash! 时间复杂度也是很...

2018-05-03 17:44:00 311

原创 博弈问题总结

部分学习自这个upSG函数的计算方法一个局面的SG为mex{后继局面的SG}几个局面的和的SG为单个的SG异或SG不为0时先手必胜,SG为0时后手必胜证明的基本套路必胜局面存在一个操作到达必败局面,必败局面无论怎么操作都会到必胜局面1、Nim Game比较经典的问题:有n堆石子,每次可以从任意一堆里选出任意数量(不为0)的石子,不能取的输对于一堆石子,S...

2018-05-03 08:07:10 449

原创 [BZOJ4550]小奇的博弈(博弈+DP)

题目:我是超链接题解:一开始读错题了 当一个棋子被挤到一端的时候就再也动不了了,那么根据白格子最左,黑格子最右。 我们首先考虑K=2,可以发现白格子尽量避免往左移动,黑格子避免向右移动,白格子的目标是向右移动把黑格子逼死,那么可以发现,只要两个格子的间隔不是0,都是先手胜的K>2的情况同理,白棋是一定不会主动往左移的,黑棋也一定不会主动往右移,所以黑白之间的间隔一定会不断...

2018-05-02 21:54:14 439

原创 [BZOJ4548]小奇的糖果(双向链表+树状数组)

题目:我是超链接题解:首先,按y坐标排序,我们假定这条线无限低,这时候答案相当于相邻两个同种颜色的中间的最大点数 然后这条线向上,一次性删除一行 用双向链表维护一个点的前一个和后一个同种颜色的位置 删除的话,把这个点从树状数组和链表中都删除,每次删除,记录一下这个点pre和nxt之间的答案 然后把y全都赋成相反数,再做一遍即可得到下端的情况代码:#include &...

2018-05-02 15:37:48 224

空空如也

空空如也

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

TA关注的人

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