首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
小红统计区间(hard)
6条解析
开通博客写题解
温柔GGboy
发表于 2024-01-17 23:05:33
提议描述非常清楚,就是求有多少个区间满足区间的和 >= k 依旧是从暴力入手: for i in range(n): s = 0 for j in range(i, n): s += a[j] if s >= k: cnt += 1 其中,a指的是输入数组,
展开全文
菜鸟不会飞_
发表于 2024-01-19 23:14:10
离散化 + 树状数组 求解所有元素之和不小于k的非空区间数量: 求解前缀和 对前缀和进行排序然后离散化 树状数组维护小于s[i] - k的值的数量 因为树状数组需要查询小于s[i] - k的数量,所以离散化时需要把每个s[i] - k一起排序离散化 add(get(0), 1) 把0首先加
展开全文
TauLee
发表于 2024-01-21 18:31:58
F. 小红统计区间(hard) 动态开点线段树的板子题, 直接贴板子, 每输入一个 就 update 一下, 查询时, 查询范围 Maxl (左极限值)到 范围的个数. 直接贴代码: (有没有佬教教我, 成员函数内调用成员函数时, 不通过传入 tr 的引用, 调用 tr 的成员函数, 而是直接调
展开全文
君鸿
发表于 2025-03-25 10:30:42
解题思路本题由于原数组a中存在负数,扩大区间范围可能会导致区间和反倒减少,因此不能简单使用滑动窗口。假设已知前缀和数组sum,那么区间和 s[l, r] = sum[r] - sum[l - 1] >= k的必要条件为sum[l - 1] <= sum[r] - k。我们对于每一个右边界
展开全文
牛客554179412号
发表于 2025-02-13 00:47:39
// 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in);
展开全文
内向的华夫饼
发表于 2025-03-04 22:17:20
''' 暴力解法,运算之间过长,需要计算n^2 n, k = map(int, input().split()) a = list(map(int, input().split())) count = 0 for i in range(len(a)): for j in range(i,le
展开全文
查看本题
查看本题讨论
相关比赛
73239-牛客周赛 Round 28
进入比赛
73449-牛客周赛28 内测
进入比赛
74269-自己学习
进入比赛
74358-HBUCM寒假训练赛2
进入比赛
74654-11
进入比赛
等你来战
查看全部
牛客小白月赛119
报名截止时间:2025-07-04 21:00
牛客周赛 Round 99
报名截止时间:2025-07-06 21:00
牛客练习赛142
报名截止时间:2025-07-11 21:30
2025年第一届上海师范大学程序设计竞赛(同步赛)
报名截止时间:2025-07-13 18:00
牛客周赛 Round 100
报名截止时间:2025-07-13 21:00
2025牛客暑期多校训练营1
报名截止时间:2025-07-15 17:00
2025牛客暑期多校训练营2
报名截止时间:2025-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题