Gooby114514
Gooby114514
全部文章
分类
未归档(12)
题解(25)
归档
标签
去牛客网
登录
/
注册
Gooby114514的博客
全部文章
(共37篇)
题解 | 牛客周赛 Round 71 题解
牛客周赛 Round 71 题解 有些东西不知道为啥牛客渲染不出来,更好的观感看这里 A 构造A+B 容易想出最多有 种构造方法,所以只要判断 和 的关系即可。 #include <bits/stdc++.h> using namespace std; int main() { ...
2024-12-09
0
119
题解 | #小苯的树上操作#
G 小苯的树上操作 容易看出是换根dp,我们可以这样定义: 表示以 为根的子树, 不去掉的最大点权和 和 分别表示在以 为根的子树中,只保留一颗子树的最大权值和次大权值(不包括 的权值) 表示以 为根, 不去掉的最大点权和 和 分别表示在以 为根时,只保留一条相连的边的最大权...
动态规划
2024-12-03
0
40
题解 | #小苯的优雅好序列#
F 小苯的优雅好序列 题目需要让 数组中的每个连续子数组都是优雅的,容易看出其实我们只需要让所有长度为 的连续子数组优雅就可以了。 那么接下来思考如何根据给定的 和 求出 。 我们不妨设 ,题目需要求出满足要求的 ,即存在一个正整数 满足 即 也就是 所以我们只要枚举 的因子...
数学
2024-12-03
1
62
题解 | #牛客周赛 Round 70#
牛客周赛 Round 70题解 A 小苯晨跑 #include <bits/stdc++.h> using namespace std; void solve() { int a[4]; for (int i = 0; i < 4; i ++ ) cin >...
2024-12-03
0
154
题解 | 牛客小白月赛43题解
满意的数字 解法:暴力即可 #include <bits/stdc++.h> #define endl '\n' #define ls u << 1 #define rs u << 1 | 1 using namespace std; typedef long l...
C++
2022-01-13
0
330
题解 | #滑动窗口的最大值#
方法1:暴力这个方法还是挺好理解的,就是对于每个滑动窗口,我们来进行最大值的查找即可时间复杂度:因为对于每个起点我们都遍历过一遍滑动窗口的大小,所以是O()空间复杂度:O(n) ———— class Solution { public: vector<int> maxInWind...
单调队列
暴力枚举
2021-07-14
1
500
题解 | #数据流中的中位数#
方法1:暴力我们使用一个vector来存数组并且对于每次中位数的计算,我们直接排序一遍,然后寻找中位数即可时间复杂度:插入数字O(1),查找中位数O(nlogn)空间复杂度:O(n) class Solution { public: vector<int> v;//用于存数组 ...
堆
模拟
2021-07-13
0
511
题解 | #二叉搜索树的第k个结点#
方法1:递归我们要知道二叉搜索树的性质,对于每个节点,其左子树中所有点的点权小于(等于)它,其右子树的所有点的点权大于它。我们可以根据这个性质来递归查找第k小的值有一个巧妙的处理方法,我们从根开始一直往左子树深搜,那么搜索结束的时候所在的节点一定是最小的。然后我们回溯,这样就能按照从小到大的顺序回去...
递归
栈
2021-07-03
0
490
题解 | #重建二叉树#
方法1:递归例如,我们给定前序遍历:1、2、3、4、5、6、7中序遍历:3、2、4、1、6、5、7我们知道,前序遍历的顺序是根,左子树,右子树,所以在一段前序遍历中,第一个一定是当前子树的根。我们找到这个根,然后我们知道中序遍历中,顺序是左子树,根,右子树。于是我们可以找到根的位置,其左边就是左子树...
递归
栈
2021-07-03
0
538
题解 | #用两个栈实现队列#
方法1:模拟我们假设只有一个栈的时候,然后当我们依次推入1、2、3这些元素,这个栈就变成了这样那么当我们这个时候要将队头,也就是栈底弹出的时候,我们发现有很多挡在他前面,所以我们需要另外一个“中转栈”来存储这些元素,就像这样于是我们发现,此时第二个栈的栈顶就是我们要弹出的元素,弹出即可。然后把之后的...
模拟
栈
2021-07-01
0
526
首页
上一页
1
2
3
4
下一页
末页