- 博客(60)
- 收藏
- 关注
转载 模拟58 题解
A. Divisors看题看了很长时间。然后发现似乎是弱智题。用一个哈希表统计每个因子出现了多少次就可以了。B. Market显然将物品和询问都排序,单调指针就不用管时间限制。刚开始看成了无限背包,看到数据范围就傻了,$c=10^9$还无法矩阵快速幂。打完暴力发现过不了样例,然后发现是01背包。然后正解就没啥难度了。既然花费压不进状态...
2019-10-03 21:11:00
168
转载 模拟57 题解
A. 天空龙一个很好的性质是:最优方案可以不存在一个颜色A,转化为B再转化为C。因为将A直接转化为C一定更优。所以无需分类讨论,直接用一个sum判断正负就可以了。B. 巨神兵C. 太阳神发现问题的正向比较复杂,于是考虑逆问题。$\sum \limits_{a=1}^{n} \sum \limits_{b=1}^{...
2019-10-03 20:41:00
180
转载 模拟56 题解
A. Merchant看到一次函数,马上想到维护一个凸包,或许可以维护一下前m大一次函数的总和?然而想了想并不会维护,于是转换了下思路。似乎答案具有单调性:除去答案为0的情况,其它一定具有单调性。结论是显然的。不妨考虑任何一个组合。一些一次函数的和仍为一次函数。如果总一次函数的斜率大于0,那么时间越大越优,即具有单调性。如果总一次函数的斜率小于等于0,那么...
2019-10-03 11:57:00
223
转载 模拟55 题解
A. 联一眼线段树。觉得T1似乎不应该这么难打。然而看了几分钟没有想出更好的做法。于是花了二十多分钟码了线段树。段错误一会之后,一遍过样例就交了。后来对拍也过了,很偷税。所以直接维护一下出现位置最靠坐的0 1就行了。一种比较好的离散化做法是将左闭右闭的区间转化为左闭右开,因为只关注最左状态,这种做法是正确的。B. 赛将全部的物...
2019-09-29 21:44:00
142
转载 模拟54 题解
A. x不妨考虑每一个质因子。那么拥有这个质因子的所有数都应当被分入一个集合中。而不拥有这个质因子的数可以有两种选择。将每个质因子的情况综合起来,用并查集维护一下联通块数量,答案就是$2^{cnt}-2$B. y暴力dp的设计是简单的,显然可以使用bitset优化一下这个dp,然后改变一下方式卡卡常似乎能A? 很显然01串的状态数随...
2019-09-29 21:30:00
166
转载 模拟53 题解
A. u一眼差分,在斜线上加一减一。然后发现这样的复杂度是$O(nq)$的,似乎不是很好过。然后发现打差分标记的形式也是连续的,所以差分两次就完了。B. v最优决策问题,一般倒着转移,$O(n*2^n)$的dp是显然的。考试时一直在想能否改成三进制状压,只压15位状态,表示距离边界距离为i有多少个白球。然后发现没有办法确定某个状态会转移到谁,...
2019-09-28 16:51:00
106
转载 模拟52 题解
A. 平均数刚开始没想到。突然想到二分判定。然后想到平衡树,想着这题也太难了。然后想到树状数组离散一下就好打了。然后忘了开longlong,被搞成了60分。其实精度确实有问题,和暴力拍千组左右数据会出错。所以其实问题是求逆序对,打归并排序或许常数会小一点。B. 涂色游戏一眼矩阵快速幂。 把小的那一维放在矩阵里,转移系数与某题类似。...
2019-09-27 17:36:00
143
转载 模拟51 题解
A. Tree可以发现,在开始时以1为根处理出dfs序。那么:1.修改节点的子树不包含lca,那么直接使用该节点的子树区间。2.修改节点的子树包含lca,那么只要扣掉lca在该节点的哪一个儿子的子树部分就可以了。对于换根lca:分类讨论即可正解是求出root与a,root与b,a与b的lca,取三个lca的深度最大值。B. Functio...
2019-09-27 17:27:00
177
转载 模拟50 题解
A. 施工又是利用了一些结论的题,因为想不到结论,经常做不出这种题。枚举两个不变的边界,那么中间的建筑必定被提高成相同的小于等于边界的高度。于是设$f_i$表示考虑前i个建筑,并且第i个建筑高度不变的最优答案。设对于转移(i,j),中间建筑的最优高度为t,可以写出dp转移方程。拆开式子,可以得到一个二次函数。直接求二次函数最值,可以做到$O(n^2)$。接着发...
2019-09-23 16:47:00
127
转载 模拟49 题解
A. 养花利用根号的一些性质,可以得到很多在最坏情况下$n\sqrt n logn$的算法,然而出题人似乎根本没有给这个算法分的意思。正解是分块。预处理出每个块内对于每个k的答案。对于询问,大块直接统计,小块暴力就可以了。设值域为s,块的大小为q,那么总共有$\frac{n}{q}$个块。总复杂度为$O(\frac{n*s*ln(s)+n^2}{q}+m*(q...
2019-09-22 11:26:00
133
转载 模拟48 题解
A. String Master$O(n^3)$随便做。B. Tourist Attractions因为数据范围$n^2$没有任何问题。考虑设$dp(i,j,k)$表示节点i从节点j来,并再走k步的方案数。显然$dp(i,j,1)=du(i)-1$,除了返回j,别的方案都是可行的。设$link(i,j)$表示i,j是否联通的0/1变量。$dp...
2019-09-22 10:29:00
289
转载 模拟47 题解
A. Emotional Flutter显然第一步的位置只有k种不同的取值。前缀和对步长k取模,那么每条黑线限制的是一段连续区间。问题是是否完全限制k个位置。第一个思路是动态开点线段树,想了想,害怕卡空间,没打。之后的想法是将每条线段离线下来,对线段的左右端点和两条线段之间的区域离散化,直接用差分数组表示覆盖次数,如果存在覆盖为0的位置则有解。更好的思路是直接...
2019-09-20 15:39:00
151
转载 模拟46 题解
A. Set原序列中,一定存在一段连续的区间,保证区间和整除n。不妨将区间和表示为前缀和的形式,如果存在任意两个相同的取值,那么该区间合法。而前缀和总共有n+1个,不同的取值最多有n个,固一定存在至少一个合法区间。B. Read题意其实是问序列中是否存在大于$\frac{n+1}{2}$的众数。如果存在,那么求出这个众数出现了多少次。...
2019-09-19 11:21:00
119
转载 模拟45 题解
A. kill显然本题可以二分答案。于是问题转化为判断一个距离是否可行。将人和怪物分别按位置排序,那么每个人选择范围内可以选择的最靠左的怪物,不会使答案更差。单调指针扫一遍就可以了。B. beauty统计每条边儿子方向上的关键点数量,设为$cnt[i]$,那么另一个方向上的关键点数量为$2k-cnt[i]$,$ans=\sum \li...
2019-09-18 17:46:00
143
转载 关于lct维护动态生成树问题
水管局长数据加强版题意是要求维护一棵最小生成树,支持删边操作。删边操作比较难处理,因为如果删掉树上的边,很难从已经有备选集合中找出连接不同联通块的最小的边。然而题目并没有要求在线。 所以离线。问题由删边转化为加边。考虑加的每一条边:如果两个点没有联通,直接联通。如果两个点已经联通,那么两个点之间存在一条唯一路径。加上当前边,会形成一个简单环。找出这...
2019-09-17 17:26:00
257
转载 模拟44 题解
A.D显然对于每一个点,它左侧的区间gcd是单调不增的。因为gcd一旦减少至少减半,不同取值不超过log个。从左到右扫一遍的过程中,维护一个单调的pair数组。第一维为区间gcd值,第二维为左端点下标。显然我们只关心同一个gcd值最小的左端点。不断维护一下这个元素个数不超过log的单调数组,暴力修改更新答案就可以。复杂度貌似是$O(nlog^2n)$的,...
2019-09-17 12:18:00
131
转载 模拟43 题解
A. A发现不断加a,乘b。枚举将s乘k次b,则有$t=s*b^k+\sum \limits_{i=0}^{k-1}used[i]*a*b^i$答案即是使得$\sum \limits_{i=0}^{k-1}used[i]$最小的方案。将s,t表示为b进制会比较好算。当a=1时,贪心地选择就可以了。然后a!=1就不会打了。其实将差值除一个a,问题就转化为了a...
2019-09-15 19:38:00
137
转载 模拟42 题解
A. 世界线毒瘤出题人,bitset题卡空间。于是将所有的点分成两份,做两次拓扑排序,bitset只用开一半,空间就能够了。B. 时间机器似乎是很显然的贪心,然而没想到。只会打更加显然的网络流暴力。按左端点排序,set维护一下不断取后继就行了,当没有后继即为无解。C. 密码将所有合法的组合数打个表,找一下规律。然后整个机房...
2019-09-13 23:47:00
144
转载 模拟41 题解
A. 夜莺与玫瑰与题解中的定义类似:枚举每个斜率,设为向量$(a,b)$如果$gcd(a,b)!=1$,那么直接跳过。考虑每个点(x,y),它的前趋为(x-a,y-b),后继为(x+a,y+b)。一个点是合法的当且仅当不存在前趋,存在后继。于是$ans=\sum \limits_{i=1}^{n-1} \sum \limits_{j=1}^{m-1}[gcd(i,...
2019-09-10 12:15:00
108
转载 模拟40 题解
A. 队长快跑非常显然的数据结构优化dp,线段树下标为a的最小值,要求支持区间最值,区间加,单点取max。随便写下转移方程就好了。B. 影魔树上数颜色?但是要求了一个深度。我的做法是将询问离线,显然在一个询问中我们只关注每种颜色在该子树中出现的最低深度。维护动态开点线段树,下标为颜色,维护每个颜色出现的最低深度,同时将这个最低...
2019-09-08 15:17:00
103
转载 模拟39 题解
A. 工业题手玩样例。然后发现就是到达所求点上面点的方案数乘一下a,b的次方。一个简单的组合数问题。B. 卡常题一眼费用流,然而只有40分。考后才发现费用流是错的,不会建图。部分分中提示可能形成一个大环。2n个点,2n条边,如果不是大环会形成什么?显然就是基环树。基环树上随便dp就完了,然而这样打的很麻烦。其实可以将右部的点看...
2019-09-07 19:42:00
93
转载 模拟38 题解
A. 金显然是问gcd是否为1高精取模B. 斯诺(snow)考虑问题的逆问题。有多少区间是不合法的。显然一个区间,最多在考虑一种颜色的情况下不合法,所以不用容斥。推一下不合法条件的式子,然后发现要求一个前缀和。树状数组就一个log了。发现每次查询的右端点移动很小,像莫队一样移动就行了。C. 赤(red)暴力d...
2019-09-07 19:23:00
148
转载 模拟37 题解
A. 简单的区间看到这种题,一眼就是枚举最值,则确定左右区间,统计跨最值点的答案。维护前缀和后缀和就完了。于是自然地想到用个主席树,还是枚举小的区间,复杂度$O(nlog^2n)$。复杂度证明见模拟31 C.English正确的算法一定无法避免枚举小区间,已经带了一个log,O(1)查询,估计得用桶。所以算法流程是:先$solve(轻儿子)$,回来把桶...
2019-09-06 08:03:00
139
转载 模拟36 题解
A. 字符题中保证$p_i<=1e5$,还可以很显然地发现当总长度大于$p_{max}+c$,一定不会更优。于是枚举长度的大小。将每一个限制对长度取模。显然如果相邻两个字符所在的区间存在交集,就表示状态非法。于是得到$O(m*p_{max})$的暴力。发现在取模的过程中如果已经不合法,可以直接跳出。在随机数据下这个算法已经很优秀,但如果特殊构造...
2019-09-05 12:19:00
71
转载 模拟35 题解
A. 公园长度放不进状态,那就把遍历的点的个数放进状态,使长度最小。然后就变成了DAG上最短路问题。设个源点汇点,直接拓扑排序就完了。B. 计划设$mn(i)$表示左端点选i,最小的愉快的旅行。显然$mn(i)$是单调的,单调指针扫过去就完了。然后对询问枚举左端点等差数列求和,就做到了$O(qn)$。将n个点分成$\sqrt n$个块,处...
2019-09-03 11:29:00
115
转载 模拟34 题解
A. 次芝麻显然答案是$min(n*2^k$%$(n+m),(n+m)-n*2^k$%$(n+m))$因为每一次乘2,在取模意义下,选大选小是等价的。B. 喝喝喝$a_x$%$a_y=k$$a_x-k=a_y*m$所以直接对$a_x-k$质因数分解,两个单调指针乱扫就完了。C. 长寿花暴力状压:直接考虑集合。然而并没有必要...
2019-09-03 11:18:00
156
转载 模拟33 题解
A. 春思比较简单的一道题,甚至是见过的原题。约数和是积性函数,搞一搞等差数列求和,乘到一起就可以了。B. 密州盛宴显然,方案合法的条件是苏轼每轮都能吃到菜。所以就发现任意后缀0,1个数必须满足,$sufcnt_0-sufcnt_1<=1$。所以当不满足条件时找到第一个1,把他交换过来,答案对两者之间的距离取max,显然这样能得到一个最优答...
2019-09-03 11:16:00
90
转载 模拟32 题解
A. chinese要求的答案是所有情况总的炼字个数。观察到题中k的范围比较小,所以对k下手。枚举炼字的大小,限制与它同一行同一列的数的大小,其它数随便选就可以了。直接快速幂,$O(klogmod)$可过。写的帅一点,弄个线性筛,直接推一些东西,复杂度就变成$O(\frac{klogmod}{lnk})$了,可以近似认为$O(k)$B. physics正...
2019-09-03 10:54:00
116
转载 bzoj5461 Minimax 题解
https://www.lydsy.com/JudgeOnline/problem.php?id=5461看到题目,必将m种权值离散化。首先是一个显然的dp设计。设$f(i,j)$表示第i个节点,最终取值为j(已离散化)的概率。因为树上的节点儿子数不超过2,不妨设值k出现在左儿子上。则有$f(x,k)=f(ls,k)*(pmx_x*\sum \limits_{j=1}...
2019-09-02 17:54:00
90
转载 bzoj4868 期末考试 题解
https://www.lydsy.com/JudgeOnline/problem.php?id=4868显然我们只关注最后出分的学科。刚开始想的是dp,然而不知道如何记录状态。突然就想到了正解。首先对于每一个最后出分的日期,所有的不愉快度一定来自两个方面:$n$个同学的期待,这个作前缀和可以$O(1)$统计。$m$个学科调派老师,这个作前缀和也可以$O(1)$统...
2019-08-28 18:14:00
136
转载 模拟31 题解
A. math考试时打的错解,取每个$a_i$与k的gcd,分别做背包由0直到k。但是复杂度有点问题,于是做了个筛。$O(k sqrt(k))$一定没有问题,在不构造特殊数据下很优秀。考后突然被自己一个简单的数据hack掉了。2 62 3我的程序会输出50 2 3 4 5然而显然1是可以被拼凑出来的。正解是求出k与所有的$a_i$的gcd。答案就是k/gcd,和首项为0,末项...
2019-08-25 07:01:00
172
转载 模拟30A 题解
A. 树联想起远古考试时做的题 记忆的轮廓。树上走一些步数的期望。显然可以直接解方程。然而复杂度$O(qn^3)$,利用树上的性质优化一下,直接一遍dfs过程中解出来,可以$O(qnlogmod)$,其中的log是求逆元。然而只有20分。预处理出每个点走到每个儿子的期望步数,走到父亲的期望步数。树上倍增求lca,处理两个函数的树上前缀和就完了。...
2019-08-25 07:01:00
148
转载 模拟29 题解
A. 壕游戏不会做,以为是贪心。结果发现贪心是错的。正解是网络流中的费用流。将每条边$i$拆为$c_i$条边,将所有边建出来,每条边的费用为$a_i*j+b_i$,$1<=j<=c_i$。然后可以直接跑费用流。然而复杂度$O(mk^2)=O(跑不过)$,死了。考虑优化一下。考虑到实际上并不需要这么多边,因为起点的流量最多为1,且在网络...
2019-08-22 17:19:00
134
转载 模拟28 题解
A. 虎比较显然的贪心。儿子中存在偶数个不符合条件的,直接全部连在一起。存在奇数个,最后剩下的一个能上传则上传,否则也撞死在这里。容易证明,将更多的不符合条件的情况上传,不会使答案更优。B. 阴阳观察题目两个性质:0/1为联通块同行同列1之间没有0,0之间没有1, 即0/1分别在左右两侧。结合起来发现合法方案一定是1分布在矩形...
2019-08-21 21:43:00
95
转载 模拟27 题解
A. 小奇挖矿2看完题,小凯的诱惑?大于17的点可以直接转移,反之则暴力枚举。去一下重,记录前缀最大值转移就完了。B. 小奇的矩阵(matrix)题中要求输出答案的整数,然后就不理解。暴力化简式子。最终化为:$(n+m-1)\sum \limits_{i=1}^{n+m-1}A_i^2 - (\sum \limits_{i=1}^{n+m...
2019-08-20 15:42:00
121
转载 模拟26A 题解
A. marshland考试时想到了网络流,然而不会建图,就死了。正解是最大费用可行流。比较容易想到的是将每个点拆为两个点,s连没有危险值的入点,没有危险值的入点连有危险值的入点,入点出点之间限流有费用,出点再连没有危险值的出点,这些出点连向t。不断跑spfa,通过有流量的边,记录下前趋。将前趋的边的流量改变,EK算法。B. part...
2019-08-20 06:31:00
164
转载 模拟25A 题解
A. Lighthousem的范围极小,显然的容斥。总的方案数,减去受任意一个限制的方案数,加回受两个限制的方案数。就能得到受所有限制的的方案数。将选择的一些边所指向的点放在同一个联通块里。方案数其实就是这些联通块的圆排列,再乘上$2^{不为1的联通块个数}$,因为每个联通块都存在顺时针逆时针两种形态。最后统一除2消除掉整体顺时针逆时针影响。...
2019-08-19 07:03:00
131
转载 模拟24 题解
A. Star Way To Heaven如果二分答案,问题就转化为不经过一些等大的圆,能否从左侧到达右侧。然后我就不会了。其实问题很简单:不能从左侧走到右侧,等价于能从下侧沿障碍走到上侧,也就是说一些圆将路阻断开。二分答案,用并查集或者dfs都可以做到$O(k^2)$建边之后$O(k)$(不计并查集)验证。总复杂度$O(k^2logn)$。其实问题就是一个最...
2019-08-17 16:02:00
198
转载 模拟23 题解
写在前面:这场考试题目比较简单,主要是每道题都可以对拍。考试开始看完题,先打完了T3共50分的部分分,结果一个小时多一点推出T3,过了对拍,极限数据没问题,稳A了。回去半个小时切掉最水的T1,写了最暴力的。A. mine设dp(i,0/1/2/3,0/1)表示前i位,且第i位填入0/1/2/炸弹的方案数。当第i位填入1的时候,需要关注炸...
2019-08-16 11:35:00
115
转载 模拟22 题解
A. 数论一条性质: 对于一个不良好的数$x$,$x*p^c$一定不是良好的。 因为那些小于x,并且因数比x多的数,乘上$p^c$仍然更优。这个性质告诉我们:一个目前认为不优的数,不会贡献出良好的数。显然最大的质因子不会很大,良好的数也不会很多。实践得出的结论:即使在k取到233的时候,当n为1e18,良好的数只有四万多个,其中存在...
2019-08-15 12:02:00
152
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人