Mag1c0nch
Mag1c0nch
全部文章
分类
归档
标签
去牛客网
登录
/
注册
Mag1c0nch的博客
全部文章
(共24篇)
题解 | #游游的数值距离#
枚举所有 x ,可能的 y 最多只有三个,x 也很少因为是阶乘 #include <bits/stdc++.h> using namespace std; #define int long long const int N = 2e5 + 5; int __t = 1, n, y, fa...
2024-11-23
0
5
题解 | #圆覆盖#
每个点到达圆心的距离固定,最终的半径也一定是某点到达圆心的距离,所以维护好每个点到圆心的距离和权值,按距离排序然后顺次选取即可,记得开ll #include <bits/stdc++.h> using namespace std; #define int long long const ...
2024-11-23
0
5
题解 | #请客吃饭#
二分答案+滑动窗口我们来看看为什么可以想出这个思路首先我们假设所有的人都是数轴上的点,他们的坐标就是 a ,权值就是 b 对于一个隔阂值 m ,代表在数轴上选择一段长度为 m 的区间,区间里点的权值和就是贡献那么这个区间就是滑动窗口,他的右端点一定在一个点上,因为从贪心的角度来看,如果右端点不在一个...
2024-11-23
0
9
题解 | #游游的最长稳定子数组#
从第二个元素开始遍历数组,如果当前元素和前一个元素之差的绝对值不超过1,则当前稳定子数组的长度加1,否则,重置当前稳定子数组的长度为1,然后维护一个最大的答案即可 #include <bits/stdc++.h> using namespace std; #define int long...
2024-11-23
0
5
题解 | #【模板】实数域三分#
观察函数,发现函数 F(x) 在区间 [l, r] 上是一个单峰函数,所以可以三分,注意 eps 设置到比给定标准小一点就行 #include <bits/stdc++.h> using namespace std; #define int long long const int N =...
2024-11-23
0
5
题解 | #【模板】二分#
模板,按照题意模拟即可,记得讨论清楚边界 #include <bits/stdc++.h> using namespace std; #define int long long const int N = 2e5 + 5; int __t = 1, n, q, op, l, r, x, ...
2024-11-23
0
7
题解 | #平均数为k的最长连续子数组#
当长为 len 的平均数等于 k 时,代表区间的和为 len*k ,特别的,当 k 为 0 时,区间的和也为0,代表 sum[r] == sum[l-1] ,所以我们可以先简化题意,将每一项都减去 k ,来求区间平均数为 0 的最长区间,那么对于每个区间前缀和 sum ,一定是和之前值等于 sum ...
2024-11-21
1
18
题解 | #小红的子序列逆序对#
对于一个逆序对 i j 来说,其在子序列中出现的次数是固定的,是 2^(n-2),因为对于 n 个数而言,i 和 j 必须出现在逆序对中,而其他数都可以出现或者不出现,所以每个逆序对都会出现 2^(n-2) 次,答案就是逆序对数量乘 2^(n-2) 而求逆序对数量很简单了,实现方法很多,这里给一个树...
2024-11-21
2
13
题解 | #小球投盒#
每次 1 操作之后只有两种情况完成目标,同盒子 x 有过 2 操作,或者所有盒子都有过 1 操作每次 2 操作之后只有两种情况完成目标,同盒子 x 有过 1 操作,或者有其他盒子有过 2 操作可以使用map维护已经操作过的 1 和 2 操作,注意检查某操作是否存在(某个键是否存在)需要使用 coun...
2024-11-21
2
16
题解 | #小红结账#
按照题意模拟即可,需要注意的是 a/b 向上取整可以直接写为 (a+b-1)/b #include <bits/stdc++.h> using namespace std; #define int long long const int N = 2e5 + 5; int __t = 1...
2024-11-21
1
12
首页
上一页
1
2
3
下一页
末页