Bezime
Bezime
全部文章
分类
题解(10)
归档
标签
去牛客网
登录
/
注册
Bezime的博客
全部文章
(共8篇)
题解 | #变化的数组#
F题题解: 大致思路: 先看操作成功的规律: 对于一个 和 ,按二进制来看 的 最低位(即 lowbit)加进 中,会变为 ,并进位,而更低位的值不会变化。下一次 的 最低位 将会变高,而当 的 最低位比 的 最高位还高时, 的值将不会发生变化。 举个例子: 如果 (二进制表...
C++
二进制
快速幂
2024-12-08
3
81
题解 | #找更多的数字#
D题题解: 方法: 数学解法 思路: 查询保证了有且仅有两个数只出现1次,其他都是2次 设这两个数分别为 、,不妨让 我们可以想办法,搞一种前缀和,两个一样的数会消掉,正常人会想到异或,求区间异或和我们就能得到 ,以为需要求其中一个值,比较麻烦,我们不考虑这个做法。(我不会求其中一个值) 换一种...
C++
数学
前缀和
2024-12-07
4
101
题解 | #太阳系DISCO#
D题的妙妙解法: 时间复杂度 思路: 我这里的点是从 到 。 因为 走两次及以上没有意义(走回来了),将 分两种: 若 答案为从 走到 (等价于从 到 )。 若 =1&preview=true"> 答案取 上面的值 与 从 走到 (等价于从 到 )加上一 最小的...
C++
贪心
2024-12-06
6
87
题解 | #有向树#
E题题解 题目大意: 题目挺短好理解,这里就不解释了 前置知识: 树形dp、线段树合并、树上启发式合并 解题思路: 对于任意的 , 能到达 的状态数量为,, 到达 也是这个值,因此总值为 。 题目转化为 这种树上求值问题,首先就要往树形dp上想。 不妨让 节点为整棵树的根 首先来看到根节点...
C++
树形dp
线段树合并
树上启发式合并
2024-11-28
1
49
题解 | #喜欢切数组的红#
E题题解: 时间复杂度O(n)哦! 题目大意: 给数组切 2 刀,每份总和相等,都要包含正数 思路: 首先定义一个前缀和数组 sum,sum[i]=a[1]+a[2]+...+a[i]。 如果 sum[n] 不是三的倍数,怎么切,都不行。 直接考虑第一刀砍在 i,i+1 之间,求右边能切的位置数量,...
C++
数组
2024-11-24
9
113
题解 | #研究red子序列的红#
F题题解: 题目说求字符串 s 中的子序列red的数目 减去 字符串 t 中的子序列red的数目。 因为有修改,往维护方面想,考虑线段树,维护区间red6个非空子串(r、e、d、re、ed、red)的个数。 众所周知,red=re+d或r+ed,而re=r+e,ed=e+d。 区间 [l,r] 的r...
C++
2024-11-24
9
73
题解 | #小苯的区间选数#
E题题解 (最简方法,运行最快,不需要特判,不需要算法,只有一个for循环!) 首先 与 取数发现可以遍历 ++ 所有数, 令 +、+,问题转化为在 取一个数。 举例一个 、 : 贪心考虑从高位往低位看,如果 、 对应数位值相等,没有办法,只能取这个值,现在 。 一直到不等的地方,例子...
C++
数学
贪心
2024-11-11
1
52
题解 | #小苯的括号计数#
H题纯诈骗,题面一本正经地解释合法串,避开了回文串。 众所周知,回味串是首尾依次相等。 也就是说abba、((这样的都是回文串; 而()自然不是回文串,因为(不等于)。 最后会发现,合法串都不是回文串。 因此直接输出 0 即可。
C++
2024-10-24
6
91