摘要: 题目链接:G. Spiders Evil Plan 题目大意:洛谷 题解:首先,\(y\) 条路径可以覆盖 $2y$ 个叶子,并且容易证明其中一定有一个叶子是直径的一个端点,所以我们以两个直径的端点分别为根建树,然后从大向小取,然后考虑两种调整方案,就可以了。 可以直接拿长链剖分 + 倍增维护。 时 阅读全文
posted @ 2020-09-17 07:49 with_hope 阅读(164) 评论(0) 推荐(0)
摘要: 题目链接:G. Raffles 题目大意:洛谷 题解:考虑将每一个增加的式子列出来 \(p_i(\frac{t_i+1}{t_i+l_i+1} -\frac{t_i}{t_i+l_i}) = \frac{p_i l_i}{(t_i+l_i)(t_i+l_i+1)}\) ,因为贡献递减,所以我们可以按 阅读全文
posted @ 2020-09-16 16:52 with_hope 阅读(183) 评论(0) 推荐(0)
摘要: 题目链接:D. Campus 题目大意:洛谷 题解:发现合并很不好搞,所以先把最后的树建出来,然后将操作转换为对子树的操作。所以可以在子树上打上标记,因为赋值会撤销之前一切操作的影响,所以我们的问题就转换为了查询上一次被覆盖的时间和在某一个时间后的操作结果。 所以对两个树 DFS,然后拿树状数组做。 阅读全文
posted @ 2020-09-14 23:54 with_hope 阅读(156) 评论(0) 推荐(0)
摘要: 题目链接:E. Boolean Function 题目大意:洛谷 题解:~~强烈建议在清醒的情况下写这题。~~因为所有的情况一共只有 $2^4=16$ 种,所以我们可以对这个状压,即压缩所有选择的方案中每一个方案的结果,在表达式树上 DP ,然后我们发现转移一个 FWT 的形式,所以直接套板子即可。 阅读全文
posted @ 2020-09-14 10:42 with_hope 阅读(363) 评论(0) 推荐(0)
摘要: 这是一个大坑。 先把写到的搬上来: fread/fwrite 模板(注:需要在最后加上 flush,并且不支持负数): namespace IO{ const int SIZE=(1<<21)+1; char ibuf[SIZE],*iS,*iT,obuf[SIZE],*oS=obuf,*oT=oS 阅读全文
posted @ 2020-09-14 08:45 with_hope 阅读(492) 评论(0) 推荐(0)
摘要: 题目链接:F. Pudding Monsters 题目大意:洛谷 题解:将平面映射到序列,即令$a_x=y$,那么问题转换为求连续段个数。 单调栈维护最大最小值,然后用线段树维护$maxn-minn-len+1$的值,最后的个数就是 0 的个数,因为单调栈中每一个元素只会出入栈一次,所以时间复杂度$ 阅读全文
posted @ 2020-09-10 17:25 with_hope 阅读(191) 评论(0) 推荐(0)
摘要: 题目链接:Min Cost Cycle 题目大意:洛谷 题解:远古时期写的题现在啥都不会了。 将$A,B$排序取前$n$个,对于每一个点$00$表示$A,B$都没有选,$01$表示$A$没选$B$选了,以此类推,所以有$1$恒比$0$小,所以考虑构造方案。 首先,每一个数的状态不外乎 4 个,如果有 阅读全文
posted @ 2020-09-09 10:31 with_hope 阅读(185) 评论(0) 推荐(0)
摘要: 题目链接:G. New Year and Cake 题目大意:洛谷 题解:留下了没有计算几何基础的眼泪/kk 经过一波简单的推导我们可以得到两个面积之差其实就是整个多边形的面积减去两个较小的多边形的面积。 那么我们考虑用 two-pointers 处理出来极大的面积小于等于多边形面积一半的多边形,然 阅读全文
posted @ 2020-09-07 21:10 with_hope 阅读(195) 评论(0) 推荐(0)
摘要: 题目链接:C. New Language 题目大意:洛谷 题解:题目长得十分像一个 2-SAT ,所以考虑先把图建出来。 然后就是贪心,枚举从哪一个字符开始整个字符串不贴着顶,现在的核心就是怎么判断是不是存在这样的一个字符串并且给出一个答案,前面的点直接判断一下就好了,后面的点在 2-SAT 的图上 阅读全文
posted @ 2020-09-07 17:20 with_hope 阅读(268) 评论(0) 推荐(0)
摘要: 题目链接:F. Mirror Box 题目大意:洛谷 题解:令交点为点,镜子为边,那么题目中的每一条边必须有光线穿过相当于限制了这一张图中不存在环,而第一个限制,即每一条光线必须从相邻的格子内出来则要求这一张图所连成的必须是一棵树。 对整个图的交点黑白染色,我们可以根据上面的分析得出最终满足条件的方 阅读全文
posted @ 2020-09-04 10:01 with_hope 阅读(158) 评论(0) 推荐(0)
摘要: 题目链接:E. Student's Camp 题目大意:洛谷 题解:首先考虑最朴素的转移即设 \(f_{i,l,r}\) 表示到了第 \(i\) 层,前面全部连通,第 \(i\) 层剩余的砖块是 \([l,r]\) 的方案数,然后考虑容斥转移,令 \(P_{l,r}\) 表示一行中恰好剩下 \([l 阅读全文
posted @ 2020-09-04 07:53 with_hope 阅读(121) 评论(0) 推荐(0)
摘要: 题目链接:F. Digits of Number Pi 题目大意:洛谷 题解:观察到$n,d$都很小,所以我们可以把$s$中所有长度为$\left \lfloor \frac{2} \right \rfloor$的子串全部拿出来建一个 AC 自动机,然后将限制差分一下改成小于等于一个数的有多少个,然 阅读全文
posted @ 2020-09-03 17:03 with_hope 阅读(189) 评论(0) 推荐(0)
摘要: 题目链接:D. Number of Binominal Coefficients 题目大意:洛谷 题解:首先根据库默尔定理,可以得知$\binom{a+b}$就是$p$进制下的$a+b$的进位次数,所以可以用数位 DP 解决,设置的状态是$f_{i,j,0/1,0/1}$表示前$i$个数,进位$j$ 阅读全文
posted @ 2020-09-02 17:05 with_hope 阅读(190) 评论(0) 推荐(0)
摘要: 题目链接:D. Shop 题目大意:洛谷 题解:三种操作,先考虑顺序。操作 1 最先,2 其次,3 最末,证明显然。然后如果进行操作 1,那么肯定对于任意一个数只操作 1 次,并且一定赋为最大值,这也显而易见,所以我们可以将赋值操作转换为加法操作。 对于同一个数的加法操作总是从大向小加肯定不劣,所以 阅读全文
posted @ 2020-09-01 18:55 with_hope 阅读(169) 评论(0) 推荐(0)
摘要: 题目链接:D. Mike and Fish 题目大意:洛谷 题解:考虑将点作为边,给定的每一个点将它的横坐标和纵坐标之间连一条边。那么问题就转化为了要求每一个点的入度和出度之差不超过 1 。 考虑到度数为奇数的点有一些麻烦,所以我们可以将度数为奇数的点连接到一个新建的虚点上,容易证明这个虚点的度数是 阅读全文
posted @ 2020-09-01 15:02 with_hope 阅读(138) 评论(0) 推荐(0)
摘要: 题目链接:E. Cycling City 题目大意:洛谷 题解:经过翻题解画图可以发现,一张图不存在这样的路径当且仅当这张图是一个沙漠。如何判断一张联通图是不是仙人掌很简单,任意求出一棵生成树后,将不在生成树上的边加 1 ,如果没有权值超过 1 的边,那么这一张图就是一个仙人掌。 那么接下来的主要问 阅读全文
posted @ 2020-08-31 23:09 with_hope 阅读(174) 评论(0) 推荐(0)
摘要: 题目链接:E. Present for Vitalik the Philatelist 题目大意:洛谷 题解:设$g_i$表示又多少个数与$i$互质,$f_i$表示有多少个集合的$\gcd$恰好为$i$。那么最终的答案就是$\sum_{i\ge 2} f_i\times g_i$。 先考虑如何算$g 阅读全文
posted @ 2020-08-31 18:40 with_hope 阅读(596) 评论(0) 推荐(0)
摘要: 题目链接:E. Intergalaxy Trips 题目大意:洛谷 题解:因为是求最短路,所以容易想到 dijkstra 。因为每一个点很明显只走向期望距离最小的点,所以我们可以从$n$号点开始往回推,正常地跑一遍就没有问题了,但是因为求的是概率,所以还有一些其它的地方维护时麻烦一些。 代码: #i 阅读全文
posted @ 2020-08-29 19:15 with_hope 阅读(134) 评论(0) 推荐(0)
摘要: 题目链接:D - Complexity 题目大意:洛谷 题解:首先想到朴素的 DP,状态为左上角和右下角的坐标,状态数$O(n^4)$,转移上看起来不太好优化,所以考虑优化状态。 容易发现答案最大不超过$\log n+\log m$,所以我们可以考虑一个经典的技巧,将状态与答案互换,即记录左上角和最 阅读全文
posted @ 2020-08-28 15:41 with_hope 阅读(212) 评论(0) 推荐(0)
摘要: 题目链接:D. Roads in Yusland 题目大意:洛谷 题解:这题目前会的有两种做法。 第一种比较简单,设$f[i][j]$为到了第$i$个点,链上覆盖到深度为$j$是的最小代价,然后写出转移方程,是$f[i][j]=\sum {f[son][k]}(\max k=j)$,然后发现可以线段 阅读全文
posted @ 2020-08-28 12:35 with_hope 阅读(163) 评论(0) 推荐(0)