- 博客(50)
- 收藏
- 关注
转载 [bzoj]2131: 免费的馅饼
原题链接:免费的馅饼题意接饼子游戏,饼子每秒下落一格,然后人每秒可以向左或者向右移动一格或者两格,当然也可以原地不动。问最多接到的饼子价值。分析发现网上的做法都是dp+树状数组优化的。这里提供一个另外的思路。由于每秒向左向右移动的步数可以是$0,1,2$步,转化在坐标系中可以是一个夹角,右边界的斜率$k=\frac{\sqrt{5}}{5}$。我们可以旋转...
2019-08-09 10:24:00
146
转载 [bzoj]1098: [POI2007]办公楼biu
原题链接:[POI2007]办公楼biu题意求一个稀疏图的补图的连通块个数以及每个连通块里的点数。$N,M$非常大。分析考虑广搜,枚举每个点,维护一个链表记录未被访问到的点。每次访问到一个新点,删除所有与它不相连的点即可。具体做法可以是标记所有与它相连的点,然后在链表里删除+入队其他点。注意这里可以用邻接表储存,并且按序号排序,可以降低查询边的复杂度。每次...
2019-08-06 10:50:00
166
转载 [luogu]P2051 [AHOI2009]中国象棋
原题链接:P2051 [AHOI2009]中国象棋题意炮能隔一个棋子打人,求一个棋盘上放置炮的合法方案数(炮不互相攻击)。分析既然求方案数那应该就是dp(神仙言论),以前做过很多类似的状压DP,这个题很直观的三进制状压啊。。看看范围。。。$n/le 100$。溜了溜了此题无解理性分析一波,发现一行一列最多放三个炮(废话),那么状态设计就挺简单了。首先肯定是...
2019-03-17 15:50:00
117
转载 [luogu]P2825 [HEOI2016/TJOI2016]游戏
原题链接:P2825 [HEOI2016/TJOI2016]游戏题意就是在一张图上放炸弹,炸弹占领横纵一行一列。炸弹不能穿透硬石头,软硬石头上都不能放炸弹。求最多能放几个炸弹。分析(第一道没看题解AC的网络流)感觉跟这道题有点像啊。。P1129 [ZJOI2007]矩阵游戏如果没有硬石头的限制,这道题就是要求行和列的匹配。如果加了硬石头怎么办...
2019-02-16 16:33:00
101
转载 2019.02.15绍一寒假集训Day-3
刷了两天题。。很不爽,超级不爽。这进度拉的也太快了吧,一天布置了12道题。。基本上全都是紫题难度,一半都是省选题。。写到后来直接放弃了,看懂题面直接点开题解了。难以想象这是NOIP难度的集训(不知道对面NOIP+的机房什么体验)下了两天的雨,莫得球能打,在机房蹲了两天(吃了四包薯片)。感觉状态不是很好,比较压抑(虽然下午的作业重写赛40分钟AK了)。...
2019-02-15 17:58:00
82
转载 [Codeforces]Codeforces Round #538 (Div. 2)
A - Got Any Grapes?题意Andrew, Dmitry and Michal想要吃葡萄。Andrew只吃绿葡萄。Dmitry不吃黑葡萄。Michal吃嘛嘛香。他们分别吃$x,y,z$个葡萄,绿,紫,黑葡萄分别有$a,b,c$个。问能不能满♂足他们。分析Andrew只吃绿的,那么先给他吃,然后把看看除了黑葡萄外的葡萄能不能满足Michal,剩...
2019-02-13 16:13:00
141
转载 [Codeforces]Codeforces Global Round 1
A - Parity题意给定一个$b$进制数,要求输出它在十进制下是奇数还是偶数。分析花了我略多的时间,首先题目中给的数字范围很大,不能直接转化为10进制。分析性质,发现只有奇数乘奇数还是奇数,其他都是偶数。对奇数进制和偶数进制分类讨论。偶数进制看最低位的奇偶性,如果是奇数那么这个数就是奇数,不然是偶数。奇数进制看每一位上奇数的个数,如果是奇数个奇数就是奇...
2019-02-08 00:31:00
144
转载 [POJ]P1845 Sumdiv
原题链接:P1845 Sumdiv题意给定$A,B$,求$A^B$对9901取模的值。分析先说说我的第一思路:模数是很小的,完全可以开一个桶放下所有的幂次方。所以我们可以把每个数分解质因数了,然后把每个质数的所有幂次方装进桶里。然后我们从$1$到$9901$枚举每一位,同时统计他们的个数积,最后答案加上(个数积$\times$幂次方积)就可以了。。发现时...
2019-01-26 09:07:00
113
转载 [luogu]P1110 [ZJOI2007]报表统计
原题链接:P1110 [ZJOI2007]报表统计题意题意是很简单的。。就是一开始有$n$个元素,每个元素相当于一个队列,总的序列是所有队列按顺序拼接起来的序列,有下面三种操作。 操作一:在原序列第$k$个队列插入一个$x$ 操作二:查询总序列里面相邻元素的差值的绝对值的最小值。 操作三:查询总序列里面所有元素差值的绝对值的最小值。分析第一个操作应该是建...
2019-01-11 12:55:00
181
转载 [luogu]P5021 赛道修建
原题链接:P5021 赛道修建题意给定一颗树(不是二叉树),在树上找到$m$条链。求最短链的最大值。分析其实在考场上想出正解了的。。就是因为不会STL结果挂了。。要是写出来就1=了呢。。气死了。首先因为要求最短链的最大值,很容易想到二分。二分出最短链的长度$x$,然后要在树上找到$m$条长度大于$x$的链。分析问题,每条边只能用一次...
2018-12-24 17:03:00
85
转载 莫队算法
啥是莫队算法??莫队算法其实本质就是暴力。但是莫队算法在暴力的时候,规划好了每一次暴力的顺序,统筹安排暴力,可以有效地降低总时间。怎么做呢?首先看一道例题。P3901 数列找不同问题要我们判断每个区间里面是不是每个数都不一样。假设你是一个刚学会编程的人,不会任何数据结构,你会怎么办呢?有一种比较简单的思路是开一个桶,然后每次询问就清空桶,再把区间装进去,最...
2018-12-21 19:58:00
93
转载 模拟退火
啥是模拟退火本质上是一个欧皇算法模拟退火是一个随机算法,实际上就是优雅地碰运气。感觉它的原理其实和二分是差不多的,就是找出一个答案,看看答案是否更优。但是由于模拟退火并不局限于单调查找,所以它能适用于非单调的问题的求解。怎么搞模拟退火啊?我们看一道例题:P1337 [JSOI2004]平衡点 / 吊打XXX这道题要求找出系统最终的平衡位置。首先我们可以进行...
2018-12-15 05:11:00
104
转载 主席树
主席树是啥??主席树其实就是可持久化线段树。。。原来听这个名字一直觉得很厉害,但是后来知道它就是可持久化线段树之后。。。其实根本不用看网上博客口胡就能写出来了。可持久化数据结构可持久化数据结构就是在原来的数据结构基础上增加访问历史版本的功能。如果不可持久化怎考虑这个问题?有一种直接的方法是每次操作线段树都重新开一个线段树。这样的空间复杂度很巨大的。如...
2018-12-15 01:44:00
79
转载 [luogu]P3250 [HNOI2016]网络
原题链接:P3250 [HNOI2016]网络题意给定一棵无根树,m个操作0操作:增加一条a到b的权值为v的链1操作:删除第t个操作2操作:输出不经过x节点的权值最大的链分析数据结构神题。。。题目中要求维护不经过$x$节点的权值最大值,也就是说所有不经过$x$节点的链都能对答案产生贡献。也就是说,当增加一条链的时,除了链上的点,都应该增加价值为$v$的权值,答案就...
2018-12-13 05:37:00
94
转载 [luogu]P2502 [HAOI2006]旅行
原题链接:P2502 [HAOI2006]旅行题意找到一条$s$到$t$的路径,使得路径上最大边权和最小边权的比值最小。求这个最小值。分析一开始的思路是从大的开始加边,一直加到刚好连通位置,然后dfs求出最小比值。但是很容易证明算法是错的。正解是:从大到小钦定这个最大边权,然后往小边权加边,直到刚好连通。由于加入小的边权之后刚好连通,易证明小边权必定在这条...
2018-12-02 17:14:00
119
转载 [luogu]P2053 [SCOI2007]修车
原题链接:P2053 [SCOI2007]修车题意有$n$辆车要修,有$m$个修理工,第$j$修理工修第$i$辆车有一个时间$r_{j,i}$。求顾客最少的平均等待时间。分析由于$n$是给定的,所以最小的平均等待时间就是要求最小的总时间。我们考虑怎么让总时间最短。很容易发现第$i$辆车放在第$j$名修理工修,在$i$后面$j$还有还有$k$辆车要修时,$i$对...
2018-12-02 16:49:00
122
转载 线性相关/线性基
线性基有啥用例题:P3812 【模板】线性基我们有些时候会遇到类似这样的问题:给定一组数字,求异或和最大值。我们可以用线性基来解决这个问题。怎么构建线性基呢那么我们怎么考虑这个问题呢?我们可以类比于向量。在向量中,我们可以用单位向量表示某一个方向上的单位量。并且我们能用n个单位向量导出一个$n$维的空间。同理对于异或空间也是可以线性基来导出的。我...
2018-12-01 00:53:00
215
转载 [luogu]P3629 [APIO2010]巡逻
原题链接:P3629 [APIO2010]巡逻题意给定一棵树,每次要走过每条边。现在要求加$k$条边,使得走过每条边后走过的距离最小,求这个最小值。分析首先不考虑加边,也就是说$k=0$时,是一棵树,显然每条边要经过两次。考虑加一条边,很容易发现形成的环上的点只需要经过一遍,最终经过的距离就是$((n-1)\times 2-len+2)$,$len$是最大环...
2018-11-28 04:54:00
128
转载 [luogu]P3623 [APIO2008]免费道路
原题链接:P3623 [APIO2008]免费道路题意给定一个图(不一定连通),上面有$m$条$0$边和$1$边。要求选边使图连通,$0$边的数量必须等于$k$。分析一开始用很天真的想法加边:先加鹅卵石路,一直加到$k$条。然后再加水泥路,加到满。然后发现在洛谷上WA了一个点。仔细分析一下问题:一对点,如果我们加的是鹅卵石路,那么我们本可以用水泥路使这一...
2018-11-27 06:02:00
152
转载 权值线段树
权值线段树是什么我们一般的线段树的节点下标是数组,而我们只要把它变成值,就能统计每个节点的数量了。类似于桶的实现吧。其实这个的线段树就是前缀和,也可以用树状数组来代替。至于查询k大,只要二分就可以了。数据范围大的时候通常先离散化数据,所以算半个离线数据结构。直接上代码拿洛谷的平衡树模板为例。这里由于懒得写线段树就拿树状数组代替了...
2018-11-19 23:16:00
112
转载 树链剖分
树链剖分有什么用我们经常会写到这样的毒瘤题目:给你一棵树,每次对树上的一条链进行操作。 例如洛咕:P3384 【模板】树链剖分。实现方法那么我们怎么很快的处理这样的问题呢?学过倍增LCA的同学应该清楚,就算是倍增,也只能找出它的几代父亲,而不能对路径上的每一个点进行修改。我们发现对于树上链的操作是很复杂的,因为树上的节点储存是不连续的。然后你就能拍脑袋了。...
2018-11-17 15:49:00
119
转载 NOIP2018游记-DAY2
早上在酒店吃完早餐就打了个车去学军。还是和昨天一样的流程。发下密码之后匆匆解了包配置IDE。然后开始看T1。看起来挺简单的。。求一个最小的类似dfs序的东西。30分钟就把\(m=n-1\)的55分拿到了。然后开始想正解。没多久就想出来了。然后实现出来发现错了。又想了好久,最后两个半小时过去还是没有写好,就抛弃了T1。。交了一个55分代码上去。看了一会儿T2。求...
2018-11-13 23:24:00
127
转载 NOIP2018游记-DAY1
早上在酒店吃过了早饭。早饭是自助餐,东西不错,就是菜都凉了。然后就打车去学军了。人好多啊。。。跟着人流进了场,找到了自己的机器。本来以为可以先试机,没想到根本就不给动机器。直到密码发下来之后才允许动机器。开考的时候还没配置好IDE。。。慌慌张张解了包(还输错一次密码吓死了)然后开始看题。一看到T1的时候整个人都是懵的。这好像……是个原题。仔细看了一下题面,发...
2018-11-10 23:28:00
95
转载 NOIP2018游记-DAY0
早上在绍兴一中继续补课,听绍一神仙讲了去年NOIP的暴力打法以及练习题之后回去自己练习。中午在绍兴一中吃过午饭,然后整理了一下行李,就出发去杭州了。下午2点26的动车。乘了十多分钟的动车就到杭州了。然后下了动车乘地铁(人真多)。坐了3站之后换线又坐了10站,终于下车。等了大概半小时滴滴,然后到了酒店。到了酒店大概4点半了。酒店很豪华!!!一楼有读书厅,有...
2018-11-09 20:24:00
100
转载 18.11.7绍一模拟赛
T1排序题意:给定一个快排,有四种键值选取方法:选区间左边端点,选区间右边端点,选区间终点,选一个随机数。若为随机数,给定随机数种子以及生成方式。现在要求用\(1~N\)构成一个数据卡掉这个快排。分析:题意是真毒瘤……当了一回毒瘤出题人……不过还是挺简单的,我们发现要把快排卡成\(O(n^2)\),每次取到的键值是最小值或者最大值就可以了。我们先把数组赋值,使\(a[i...
2018-11-07 15:04:00
78
转载 [SPOJ]SELTEAM - Selecting Teams
原题链接题意大致意思:在\(n\)个人中选取\(k\)个人组成一个球班,然后在这个球班里面任选人数组成球队,再在球队里面选取一名队长,求方案数。分析就一句话:给定\(n,k\)求下面式子的值\(\sum{(C_n^i \times (\sum{(C_i^p \times p)}))}\)发现\(T,n,k\)都巨大,所以考虑每次查询的复杂度应该是\(O(logn)\)。阶乘...
2018-11-06 08:35:00
187
转载 18.11.5绍一模拟赛
T1树题意给定一棵\(n(n\le 10^7)\)个点,一开始点全是黑的树,每次随机选一个黑点,把从他到根节点的路径上的点全部变成白色。求把树全部染白的期望染色次数模\(998244353\)意义下的结果。分析我们想要把一棵树染成白色,发现如果我们染了根节点,次数就会加一。如果没有染根节点,根节点会自动被染好。那么染好一棵树的期望次数就是把它左右子树染好的期望次数+染了根节...
2018-11-05 15:34:00
91
转载 18.11.2绍一模拟赛
T1 Alice 的幸运数题意给定n(n\le 100)个64位无符号整数(有顺序)。我们可以对每个数取反,然后按顺序执行按位与\(nbsp或者\)nbsp按位或\(nbsp或者\)nbsp按位异或。求最后结果的最小值。分析我们发现要使结果最小,高位尽量取0。打个爆搜。。发现n很大的时候全是0。大胆猜想,无需证明!!!if(n12){ printf("%d\n...
2018-11-02 13:49:00
104
转载 踩坑日记
开设此专栏的原因因为日常踩坑,踩坑之后总是要调试很久,所以开设此专栏,便于记住踩过的坑。手残2018.11.29problem:P2704 [NOI2001]炮兵阵地details:在处理二进制状压与的时候,手残把&打成了&&查了半天没查出来。。格式问题2018.11.6problem:板子details:在打板子的时候因为没看清模数...
2018-11-02 07:47:00
132
转载 [模拟赛]世界杯
题意有\(n(n\le 10^5)\)支球队,每两个球队有\(k(k\le 5)\)个属性。当一个球队的某一项属性大于另一个球队,则这个球队有可能会战胜另外的球队。每次会在剩余未被淘汰的球队里随机选出两个球队进行比赛。问有可能获得冠军的球队有多少个?分析当两个球队互相可战胜的时候,发现如果另一个球队能战胜其中一个队伍,那么这个球队能战胜这两个队伍。我们给互相可战胜的球队连一...
2018-11-01 10:03:00
97
转载 [模拟赛]路途
题意给定\(n\)个点\((n\le 40)\),\(m\)条\((m\le 1000)\)长为\(1\)的边(无重边有自环)。\(q\)个询问\((q\le 40)\),每次询问两个点之间长度在\(l,r(l,r\le 10^9,(r-1)\le 200)\)之间的路径数。分析一开始打了个爆搜结果一分都没有。正解是弗洛伊德。30pts\(f[i][j][k]\)表示从\(...
2018-11-01 08:11:00
67
转载 乘法逆元的研究
介绍模世界真是奇妙无穷我们已经很轻松地学会了乘法,加法,减法的取模运算规则。但是我们却对除法取模毫无办法。直接模?显然不行,例如:\[30/10\%3=2\]\[(30\%3)/(10\%3)=0\]很明显结果是不一样的。我们这里理由倒数的思想,定义出了乘法逆元。定义对于一个数a,若存在\(a\times b\equiv 1(mod\ p)\)那么我们将\(b\)记...
2018-10-31 19:30:00
58
转载 组合数的研究
介绍组合数学算是数学中比较难(虽然被很多人看不起)的一个分类了。我们可以用组合数学解决很多方案数有关的问题。定义组合数学里面有两个大的块。一个是排列,一个是组合。所谓排列就是在一个集合中取出的有序子集。所谓组合就是在一个集合中取出的无序子集。定义可能看不懂,但举个例子就很简单了。比如有n个人,我们从中取出m个人。把他们排成队,就是排列了。如果不关心顺序,只关心取出哪些...
2018-10-31 16:05:00
173
转载 知识点归档
算法数据结构线性基树链剖分权值线段树数论组合数的研究乘法逆元的研究转载于:https://www.cnblogs.com/onglublog/p/9883034.html
2018-10-31 14:44:00
78
转载 [luogu]P4437 [HNOI/AHOI2018]排列
原题链接 :P4437 [HNOI/AHOI2018]排列分析给定一个序列,第i项有\(a_i,w_i\)两个属性。现在给序列重排列,保持标号不变,要求在新的序列中,第i个数后面不存在第j个数使\(a_i=j\)求最大价值合法序列。价值计算方式:\(w_1+w_2+...+w_n\)这里w的下标为重排后的顺序。转载于:https://www.cnblogs.com/on...
2018-10-31 11:42:00
190
转载 [luogu]P4823 [TJOI2013]拯救小矮人
原题链接 :P4823 [TJOI2013]拯救小矮人分析有n个矮人,每个人有肩膀高和手长,一堆矮人叠在一起的高度为((\(\sum\)肩膀高)+最后一个人的手长)。如果这个高度大于陷阱高度,最后一个人可以离开陷阱。问最多有多少人可以离开。一个直观的想法是按照身高+手长排序。大胆猜想,无需证明!我们可以想象,身高+手长小的肯定逃跑能力比较弱。我们尝试先让逃跑能力弱的逃跑,...
2018-10-31 07:24:00
124
转载 18.10.30绍一模拟赛
T1斐波那契题意给定一个长度为n的数列,第i个数为\(a_i\),要求给数列划分。要求一个块内任意两个数之和不在斐波那契数列上。【样例输入】51 5 2 6 1 5 2 6 7【样例输出】4【样例说明】最优分组的一种为: 最优分组的一种为: 最优分组的一种为: 最优分组的一种为: 最优分组的一种为: 最优分组的一种为: {1}, {5, 2}, {6}, {7}。【...
2018-10-30 15:08:00
88
转载 [codeforces]903F Clear The Matrix
原题链接 :903F Clear The Matrix分析题目大意给定一个\(4\times n\) 的矩阵,上面有'.'和'*'现在你可以用\(1\times 1\),\(2\times 2\),\(3\times 3\),\(4\times 4\)这四种'.'矩阵覆盖这个矩阵,要求覆盖后的矩阵只剩'.'。每一次覆盖有价值,四种大小的矩阵价值不同。求最小的总价值。其实状压d...
2018-10-30 07:48:00
161
转载 [luogu]P2258 子矩阵
原题链接 :P2258 子矩阵分析题意很简单,定义一个矩阵的分值为所有相邻元素差的绝对值(每一对只计算一次)。然后要求一个矩阵的分值最小子矩阵。这里的子矩阵指选取r行,c列,交点组成的子矩阵。50pts普及题还是很良心的,部分分都给的很充足,打个爆搜50分就到手了。55pts爆搜加个最优性剪枝,能多5分orz。100pts矩阵不就考个dp吗……不过打死也想不出状态转...
2018-10-29 10:46:00
205
转载 [luogu]P2680 运输计划
原题链接 :P2680 运输计划分析题意很简单,给定一张连通图,n个点,n-1条边,很显然是一棵树。现在给定m条链\((u,v)\)。现在可以cut掉一条边(边权置为0)。现在求最长链的最小值。55pts蒟蒻的我肯定是拿不到满分的。。我们直接考虑部分分。对于m=1的点,我们只需要枚举链上的全部边,然后cut掉最长的那一个就可以了。裸搜一遍dfs,然后求出链长,最后减去最...
2018-10-28 12:38:00
145
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人