![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
题解
文章平均质量分 80
Belief_yfly
这个作者很懒,什么都没留下…
展开
-
23.8.4 牛客暑期多校6部分题解
原创 2023-08-04 20:15:23 · 92 阅读 · 0 评论 -
23.8.3 杭电暑期多校6部分题解
当前子树的链值用vector暂时记录,这颗子树遍历完后将相反数统计进map里即为需要寻找的能产生贡献的目标链值。统计方法可以将每条延伸出去的链值记录,然后在之前的搜过的非同一子树中的链找是否有答案累加即可。考虑一个和哈希很像的想法,假设三个颜色都有一个权值,只要和为零就表示路径上三者数量相等。反复找树的重心,然后统计经过重心的合法路径,将重心删除后在剩下的子树里继续重复操作即可。有一棵树,每个节点有一个颜色可以为。,需要查询树上有多少条简单路径满足。只要两两之间很大且互质即可,不妨设。原创 2023-08-04 19:11:22 · 172 阅读 · 0 评论 -
23.7.31 牛客暑期多校5部分题解
对于每个遍历的区间,在下方所有区间都满足的情况下,下一级区间奇偶性异或和如果相等则什么操作都不用。,表示区间左端点,区间右端点,这个区间的逆序对数的奇偶性,保证两个区间包含或者不相交。因为区间两两非包含即相交,可以搞出来一棵树的样子,那么遍历区间直接变成遍历树。可以的话只要将去和把前者的区间的最大值和后者区间的最小值交换即可。才能使其逆序对数最少,输出最少的逆序对数或不可行。,这样操作会形成若干个环,要使存在一个环的。,可以将其中的负数从优去掉(绝对值大的优先),可以从优加入去掉的负数(绝对值小的优先)原创 2023-08-02 17:02:53 · 536 阅读 · 0 评论 -
23.8.1 杭电暑期多校5部分题解
的蛇,定义两条蛇可以进行对战并会使败方变成胜者的尾巴成为一条新的蛇,最后剩下。但这样这样最后会出现统计重复的情况,需要除以。的,可以考虑容斥,如果先在一里先放。个球,那么用隔板法处理后就会超过。条蛇的前后顺序有关系,所以要乘。,问最后留下的蛇有几种不同情况。时,可以用隔板法处理答案为。条蛇并且没有蛇的长度超过。很自然会从题目联想到。原创 2023-08-02 16:25:19 · 159 阅读 · 0 评论 -
23.7.28 牛客暑期多校4部分题解
个小正方形组成的图你需要用更大正方形去反复覆盖,每次需要恰好覆盖。的矩形需要几个正方形,如果整张图可以小于。个正方形,问如何操作才能使图变成一个。为奇数时,我在考场上只想着把边分成。然后处理无法保证每次只覆盖。为偶数时可以分成四个。个以内的小正方形就挂了。,然后用辗转相除去计算。原创 2023-07-29 13:42:43 · 153 阅读 · 0 评论 -
23.7.24 牛客暑期多校3部分题解
转移的时候枚举上一段长度进行专一即可,要注意第一段前面没有数,所以要特判处理。取走下一张牌判断与猜测情况是否相同,相同则回到2操作继续,不相同则结束操作。先模拟一下,发现最终摸到牌的序列一定是小数上升序列和大数下降序列的交替。则猜测下一张小于这张牌,否则猜测下一张大于这张牌。种情况中一共能取几张牌(对输入的。表示前一段为小数,用。原创 2023-07-26 16:51:48 · 97 阅读 · 0 评论 -
23.7.25 杭电暑期多校3部分题解
【代码】23.7.25 杭电暑期多校3部分题解。原创 2023-07-26 16:06:38 · 503 阅读 · 0 评论 -
一本通OJ 1810 登山 题解
很明显这题与卡特兰数有关,但是不同点在于这题中存在点不能走。A:可以发现这种情况不存在不合法方案,所以方案数即为。考虑容斥,我们要求出总方案数和不合法方案数相减。接下来以这个例子来解释做法,再次考虑容斥原理。且不经过之前任何一个不能走的点的方案数。那么现在需要解决的是,如何求从。个点不能走,问你有几种方案。的部分对称回去即可走到。这样就能保证不会重复统计。的不合法的方案是相等。由此可以推导得出,从。总方案数即是卡特兰数。原创 2023-07-23 13:59:43 · 162 阅读 · 0 评论 -
23.7.21 牛客暑期多校2部分题解
【代码】23.7.21 牛客暑期多校2部分题解。原创 2023-07-23 12:28:16 · 146 阅读 · 0 评论 -
23.7.20 杭电暑期多校2部分题解
时,Alice无论如何操作总会留下让Bob可以改变总游戏先手胜负状态的区间,因此必败。在考场上直接跳过验证进入了下一步,赛后尝试推了一下还是推不出来,然后尝试换了个思路。所求概率等于合法方案数除以总方案数,所以我们只要推合法方案数即可。然后我就卡住了,因为我不会化简,所以就去打一下。然后发现好像和自然对数有关系,找下规律,猜想。选择一个连续的序列,它的长度小于等于。如果暴力求解,可以计算出合法方案数为。时,一次操作直接搞定,Alice赢。选择一个连续的序列,将其中连续的。如果第二步没有找到这个数,取第。原创 2023-07-23 12:24:47 · 115 阅读 · 0 评论 -
23.7.18 杭电暑期多校1部分题解
的距离,函数的结果就是到达当前点的时间),用二者相等写出四个等式,化简后用扩展欧几里德算法分别求解,并且记录最小值和产生最小值的点,再处理亿点点细节就可以啦。将从起点出发,每秒跑一个点地折返跑,问最早相遇的点(或者不能相遇)先将两个人的路径标记寻找重合的点,对于每个可能的点,到达的时间都可以用两个函数来表示,即。组查询,每组查询包含。原创 2023-07-23 12:20:09 · 67 阅读 · 0 评论 -
23.7.17 牛客暑期多校1部分题解
换出去的操作可以忽略,而剩下的操作足以将其有序化,那么接下来的分析就先建立在。个字符交换,要求这组操作能将除给定的01序列外的另外所有长度为。),保证此序列不为单调不递减,你需要给出一组操作,操作数。的所有数两两交换(这里的反向同理),操作数为。的序列有效排序,那么剩下有问题的序列中的。尽可能在靠后的位置以保证有序),操作数为。以上操作可以保证在此序列不有序的情况下将。因为此序列不为单调不递减,所以在前。的所有数两两交换使其有序,操作数为。的01序列排序成单调不递减的序列。位置之后的所有数两两交换以保证。原创 2023-07-23 12:15:54 · 93 阅读 · 0 评论 -
23.7.16 清华大学训练营预选赛部分题解
使在其一定高度以上的图形按顺序重新拼起来之后与第一个图形一样,高度小于等于你选的高度的位置会被暂时忽略,你选的高度可以为负数,问你是否有方案可以满足,并输出可行方案最后形成拼接的图形的有哪几个。因为数据范围较大,可用st表预处理出区间最大值,然后在查询时二分寻找后方第一个大于所给高度的点验证。然后并没有想到可以怎么合并答案,但本着万一能过的想法,不合并直接提交,于是就ac了…枚举左端点,可以确定选择的高度,然后暴力向后验证是否可行。位置上的高度,此为你要找的目标,再给你一个宽度为。原创 2023-07-23 12:09:05 · 87 阅读 · 0 评论 -
2023暑假集训总览
的距离,函数的结果就是到达当前点的时间),用二者相等写出四个等式,化简后用扩展欧几里德算法分别求解,并且记录最小值和产生最小值的点,再处理亿点点细节就可以啦。换出去的操作可以忽略,而剩下的操作足以将其有序化,那么接下来的分析就先建立在。个字符交换,要求这组操作能将除给定的01序列外的另外所有长度为。),保证此序列不为单调不递减,你需要给出一组操作,操作数。先将两个人的路径标记寻找重合的点,对于每个可能的点,的所有数两两交换(这里的反向同理),操作数为。的序列有效排序,那么剩下有问题的序列中的。原创 2023-07-20 18:00:34 · 135 阅读 · 0 评论 -
取石子游戏’s 题解
是一道水题题面:小H和小Z正在玩一个取石子游戏。 取石子游戏的规则是这样的,每个人每次可以从一堆石子中取出若干个石子,每次取石子的个数有限制,谁不能取石子时就会输掉游戏。 小H先进行操作,他想问你他是否有必胜策略,如果有,第一步如何取石子。一句话题解:暴力求出sg函数,再暴力枚举第一步看是否转移成了必败状态输出即可(因为转移到必败即是让先手必胜的走法)。好的结束了。咳,代码稍加收拾一下吧。#include <bits/stdc++.h>using namespace std;con原创 2020-06-13 08:25:00 · 876 阅读 · 0 评论 -
Eden的新背包问题’s 题解
是几百年前写的题目。。。题目链接首先,50分做法:把原先的多重背包二进制拆分为01背包100分做法:考虑优化设置状态 f[i][j]f[i][j]f[i][j] 表示到第 iii 个时总体积为 jjj 的最大价值,那么我们只要求 f[di−1][ei]f[d_i-1][e_i]f[di−1][ei] 就可以把第 did_idi 个给忽略掉啦,然后后半段只要从后往前做预处理,然后再来个for循环合并答案就可以了。不上代码了。。。...原创 2020-05-31 19:55:09 · 275 阅读 · 0 评论 -
c's 80分
什么鬼题目名字???好吧解释一下,考试题,题目a、b、c。。。往常套路了。题目要求的就是有 nnn 个点,你需要连 n+1n+1n+1 条边,使得原来的图是联通图,而且在删除任意一条边时不会使图不连通,问你方案数。那么很显然有两种情况(也不算很显然吧,反正你推样例的时候会推出来)。第一种:先把这 nnn 个点连成一个环,再在环上连一条对角线,公式为 (n∗(n−1)/2−3)∗(n!/12...原创 2020-03-02 11:51:42 · 208 阅读 · 0 评论 -
方格染色's 题解
纯粹的推公式题???(组合计数+概率期望)题目链接题目大致就是说给一个 n∗nn*nn∗n 大小的格子上填入 1 m1~m1 m 中的 n∗nn*nn∗n 个数(m>n∗nm>n*nm>n∗n),然后选择 kkk 个数涂黑(可能不在棋盘上),若有 rrr 行 ccc 列被全部涂黑,那么就有 2r+c2^{r+c}2r+c 的得分,问期望得分。那么转化一下...原创 2020-01-29 14:24:41 · 752 阅读 · 0 评论 -
和風いろはちゃん / Iroha and Haiku's 题解
既然讲了,那就写下题解吧。题目大意:长度为 nnn 小标从 000 到 n−1n-1n−1 的序列 aaa,满足 1<=a<=101<=a<=101<=a<=10。如果存在 (x,y,z,w)(0<=x<y<z<w<=n)(x,y,z,w)(0<=x<y<z<w<=n)(x,y,z,w)(0<...原创 2020-01-19 09:04:24 · 450 阅读 · 1 评论 -
字符串游戏's 题解
来自信息学奥赛一本通T1819题目描述:游戏分为 kkk 轮,参与者共有2个。给定一个由小写英文字母组成的字符串的集合 SSS,在每轮游戏开始时,会有一个空串,然后两人轮流在该串的末尾添加字符,并且需要保证新的字符串是 SSS 中某个串的前缀,直到有一方不能操作,则不能操作的一方输掉这一轮。新的一轮由上一轮输的人先手,最后一轮赢的人获得游戏胜利。假定双方都采取最优策略,求第一轮先手的一方...原创 2019-12-22 19:46:51 · 1340 阅读 · 4 评论 -
树上取石子's 题解
来自信息学奥赛一本通T1818题面描述:Alice和Bob想比比谁能够收集到最多的石子数量。Alice将石子分成了 nnn 堆(编号 1…n1…n1…n),并且规定了它们的选取顺序,刚好形成一颗有向树。在游戏过程中,两人从根节点开始,轮流取走石子(一次取一堆),当一个人取走结点 iii 的石子后,另一个人只能从结点i的儿子节点中选取一个。当取到叶子结点时游戏结束。然后两人会比较自己得到的石...原创 2019-12-20 21:46:42 · 356 阅读 · 0 评论 -
染色游戏’s 题解
来自信息学奥赛一本通T1817题面描述:Alice和Bob在玩游戏。有一棵 nnn 个节点的树,Alice和Bob轮流操作,Alice先手,一开始树上所有节点都没有颜色,Alice每次会选一个没有被染色的节点并把这个节点染成红色(不能不选),Bob每次会选一个没有被染色的节点并把这个节点染成蓝色(不能不选)。当有人操作不了时,游戏就终止了。Alice的最终得分为红色连通块个数,Bob的最终...原创 2019-12-18 20:27:14 · 891 阅读 · 2 评论 -
取石子’s 题解
来自信息学奥赛一本通T1816题面描述:有 nnn 堆石子,第 iii 堆石子有 x[i]x[i]x[i] 个。Alice和Bob轮流取石子,Alice先手,每次从一堆石子中取 a∼ba∼ba∼b 个。无法操作的人失败。此外,当一个人取完一堆石子时他会立即获胜。求谁会获胜。有多组数据。基本的博弈论的升级版???显然这题不能直接把sg函数异或起来了,开始分类讨论。前三个部分分口胡一下(...原创 2019-12-15 21:58:02 · 660 阅读 · 0 评论 -
放石子’s 题解
互讲题目阶段开始。。。来自信息学奥赛一本通T1815(其实本来我组是要搞一二两章来着,后来换了一下。。。)开始博弈论进阶???emmm,其实我基础博弈都不是特别好的啦。。。语言表达能力较差,接下来讲题可能会有bug什么的,请大家见谅。进入正题前再吐槽一句,这是我第一次用bitset没想到是为了博弈论而去学习的。。。先来几个有关链接:sg函数介绍bitset介绍bitset的内置...原创 2019-12-12 19:50:32 · 563 阅读 · 1 评论 -
Emiya 家今天的饭's 题解
又是一道令人无语的D2T1。。。考场搞了半天还是只能敲暴力。。。题目链接题目太繁琐。。。简单点说就是找满足条件的组合数。直接进暴力深搜暴力。。。(因为我正解的转移推不出来)首先,第一维表示目前枚举到了第几种做法,第二维表示选了几种做法,第三维表示能组成的组合数。到当前层,你可以枚举每个不为0的来统计,如果发现可以满足条件,累乘上去,搜索下一层。最后再不要这层枚举,再有一个简单的剪枝,...原创 2019-11-30 21:14:54 · 259 阅读 · 0 评论 -
括号树's 题解
这是一道令我很揪心的D1T2原因是我在考场上想出了正解却没调出来。。。题目链接题面让你求一棵树上能匹配的括号串的个数。呃,前面的20分直接暴力过(在加上是链随便打一下就好了啦),我就不解释了(明明是没写然后又不想写)。然后说一下由于考场上没调出来而交的55分代码吧。首先先来看一下链的性质。明显的一件事,形如 ( ( ) )(\ (\ )\ )( ...原创 2019-11-30 18:42:50 · 328 阅读 · 0 评论 -
格雷码's 题解
这题我代码可能算是比较长的了(来自2019年csp-s D1T1)某谷题目链接就是一个骚操作问你 nnn 列 kkk 行是什么。。。一开始看到题没什么思路,然后推了一下样例就差不多想出来了(结果我调了半小时。。。)按题目,每个状态都是由上一层反转过来放在原来的后面再进行加0加1操作的(那就相当于逆向思考过来每次操作的在前半个还是向后半个)。那么显然我们可以从 kkk 的二进制的第 nnn...原创 2019-11-26 21:37:26 · 197 阅读 · 0 评论 -
树的重心‘s 题解
题目来自2019年csp-s D2T3。两个字诠释,毒瘤。。。题目链接(来自某谷)简单介绍下题面:对于每组数据会给出一棵树,每次割去一条边分成两个棵树后,把这两棵树的重心的编号进行相加(用到一个题目给出的定理,每棵树的重心显然只会有一个或者两个),问你所有情况的结果累加的和(及把树上每条边割去后的结果累加)。先介绍一下40分的纯暴力:不妨假设以 111 为根节点,我们可以预处理出以每个...原创 2019-11-26 20:47:24 · 336 阅读 · 0 评论 -
小凯的疑惑’s 题解
这题的题解证明磨了本蒟蒻好几天,果然我太弱了说实话,其实是很水啊…(上句话当X处理)这题是真的恶心。这道题主要是来锻炼大家的读题能力、心态以及…小学奥数水平…悄悄告诉你,这题只要输入a,b,输出ab-a-b(当然这需要你尝试好几组数据凑出来)就可以了怎么做?慢慢往下看吧。我们可以画一个a列b行(假设a>b好了)的表格(当然你想行数大点也行,只是至少要b行),像这样a的倍数全...原创 2019-04-07 21:42:22 · 279 阅读 · 0 评论 -
逃不掉的路’s 题解
这个题解想写但拖了好久了。。。emmm…这算是一道模板题吧,但当初没多少人过了,然后就决定来写篇题解,毕竟也好久没写了。。。呃,题目就是给你一张图,然后求a节点到b节点必须经过几条边。这题呢可能会出现两个点有两条不同的路径,显然这两点组成了一个环。那么我们思考环的特性。显然环是没有割边与割点的。由此想到Tarjan算法求联通分量。这样就进行了缩点,使得题中的图变成了一棵树。而一定经过的...原创 2019-06-03 21:23:33 · 322 阅读 · 0 评论 -
击鼓传花’s 题解
好的我真是太弱了,这题耗了好久最后还是参考了别人的。。。题面:先看数据范围:1010010^{100}10100呃。。。好点大,放弃暴力。。。把20个分为一组。(事先凑好的。。。)来试一下吧,每次出现5都有2可以来成对去掉,那20个就去掉了4组。把是5的倍数的数放着不管,于是其他的数乘起来尾数为6。而5的倍数在除5后就是1,2,3……n/5。用num[i]num[i]num[i]...原创 2019-06-21 21:06:41 · 1175 阅读 · 0 评论 -
The Pilots Brothers refrigerator's 题解
由于我太菜了,所以只能写这题的题解了。。。题面:给你一个4*4的矩形,里面有+++和−-−两种符号,当你改动一个时,它的同行同列都会改变,问如何使它全部变成−-−。模拟?emmm…试试。显然你每个点最多只用按一次就行了(因为你按第二次就相当于没有按嘛),那就暴力试一下(我没试过,应该,大概,可能,也许可以过吧)那再思考一下,如果数据变大了会怎么办???找一下规律,如果你想改变当前位置的点...原创 2019-09-17 15:03:30 · 151 阅读 · 0 评论 -
防线's 题解
由于太菜了,所以只能讲简单的题,所以我只能准备两道题(来延长讲解时间)。。。题面:一个一维区间上,从s[i]s[i]s[i]到e[i]e[i]e[i]这段上每隔d[i]d[i]d[i]的距离放一个防具(s[i]s[i]s[i]必须放,e[i]e[i]e[i]不一定要放),执行nnn组,问是否存在一个点上有奇数个防具(数据保证最多只有一个点上为奇数个)。暴力枚举???想多了吧,就凭这数据范围,我...原创 2019-09-17 15:05:25 · 136 阅读 · 1 评论 -
friends's 题解
这,是一道很神奇的题目因为它乱搞也能过。。。甩出一个链接,自己看题面吧:https://www.lydsy.com/JudgeOnline/problem.php?id=3916好的,明显想字符串hash对不对?但很显然这个我不熟,怎么办?打算骗分试试(于是就乱搞出正解了 )首先,它是由一个字符串复制后在某个位置加上一个字母产生的,所以它输入的 nnn 一定是一个大于1的奇数,如果不是,直...原创 2019-09-20 10:07:22 · 228 阅读 · 0 评论 -
Georgia and Bob's 题解
这题思路十分有意思呢(也是本题唯一难点)。B和G(Bob和Georgia直接简称掉了)发明了一种游戏,在一个一维空间上一些点上有棋子,每次你可以将一枚棋子向左移动(直到移出空间)但不能跨越另一枚棋子,直到谁不能下了谁就输了,G先开始,给你局势,问谁必赢(不确定的情况显然是不存在的就不提了。为什么?后面会说的。)模拟么???当然不是,这种鬼题怎么可能用模拟,这种题有博弈论的偏向的吧。于是你就发...原创 2019-09-22 07:59:12 · 223 阅读 · 0 评论 -
兔子与兔子's 题解
算了还是说到水题吧这是道字符串hash。判断一个字符串中两个区间是否相等。把a到z对应为1到26,为了不影响后面的情况并且表示出顺序,需要把前缀子串统计出来并且每次输入一个数就把前的乘一个大于26的质数(我觉得选29就够了,然后开unsigned int其实也可以过的),然后再开个p数组记录每位的权值。每个区间 [l,r][l,r][l,r] 的hash值即为 rrr 的前缀 −-− l−...原创 2019-10-06 20:24:26 · 273 阅读 · 0 评论 -
I-country's 题解
这是一道线性dp。。。然而它并不easy题目给你一个 n∗mn*mn∗m 的矩阵,让后你可以选一个占 kkk 个格子的凸连通块(中间没有空隙),每个格子有一定的值,问你选择的范围内所有格子的总和最为多少显然一个凸多边形可以按行分为若干段连续的区间 [l,r][l,r][l,r],而且左端点的值先减后增,右端点先增后减所以我们可以将阶段设置成每一行,一共需要n个阶段除此之外,在状态转移中,...原创 2019-09-25 07:51:19 · 230 阅读 · 0 评论 -
守卫者的挑战’s 题解
##啊,刚好作为一道从做数论转移到做dp的一道题吐槽这守卫者太善良了吧(对敌人的善良就是对自己的残忍啊)题目意思是说给你 nnn 个任务,每个任务有一个完成概率 p[i]p[i]p[i],然后每个任务完成后你可以获得一个属性 a[i]a[i]a[i],你完成的任务的集合为 SSS,问你 ∣S∣>=l|S|>=l∣S∣>=l 并且 k+∑i=0,i∈Sna[i]>=0k+...原创 2019-09-24 11:13:24 · 529 阅读 · 0 评论 -
Om Nom and Necklace's 题解
听说这题今天刚传上本OJ,那我就来勇一发吧题意:给一个字符串,问该字符串的 [1,i][1,i][1,i] 位上的字符串能不能由A+B+A+B+…+A构成?其中 k+1k+1k+1 个A,kkk 个B,A,B可以为空串。看到题面,先想到可以分别暴力枚举A,B,但显然不太好做,换思路,emmm…我们可以把AB拼起来看成一整个字符串,那原题就变成了检查能否用 kkk 个AB和一个A拼成,那么首先...原创 2019-10-06 21:29:12 · 204 阅读 · 0 评论 -
消失之物’s 题解
这是本蒟蒻(当时)第一次写题解,感谢各位大佬捧场。是不是很熟悉的开头,哈哈,毕竟一只蒟蒻第一次写题解多少有点紧张啊…好了,切入正题…题面意思呢,就是给你n个物品,一个m的背包,接下来是w[i]表示每个物品的重量,看起来很简单,不过呢,有一个物品丢了,你要输出一个表格,表格横排的数值表示丢了第i个物品,纵列的数值表示要来填满一个容积为x的背包这里1<=x<=m,在所在位置输出方案数...原创 2019-04-07 21:28:07 · 162 阅读 · 0 评论