两次区间加之后是什么样

两次区间加之后是什么样

五个位置全是 0,先给 [0,2] 每个加 5,再给 [1,3] 每个加 2。运行下面这段程序: def range_add(d, l, r, v): d[l] += v d[r +

阅读更多 →
差分怎么做区间加

差分怎么做区间加

要给区间 [l, r] 每个元素都加 v,在差分数组上的做法是【0】。

阅读更多 →
各自擅长什么

各自擅长什么

前缀和和差分的分工是【0】。

阅读更多 →
前缀和与差分是什么关系

前缀和与差分是什么关系

前缀和与差分的关系是【0】。

阅读更多 →
⚠️ 窗口法和暴力法结果必须一样

⚠️ 窗口法和暴力法结果必须一样

把可变窗口版和暴力枚举所有子数组的版本都写出来,比较两者求出的最短长度。 一样输出 结果一致,否则输出 结果不一致。

阅读更多 →
求最长的不重复子串

求最长的不重复子串

补全 longest_unique:右端每进一个字符,如果它在窗口里出现过,就把左端跳到那次出现的后面。

阅读更多 →
求和不小于目标的最短窗口

求和不小于目标的最短窗口

补全 min_len:右端一路扩大,一旦满足就把左端往里收,记住最短的长度。

阅读更多 →
最长的不重复子串有多长

最长的不重复子串有多长

字符串是 abcabcbb。运行下面这段程序: def longest_unique(s): seen = {} lo = 0 best = 0 for hi in r

阅读更多 →
和不小于 50 的最短窗口有多长

和不小于 50 的最短窗口有多长

数组是 [17, 8, 15, 13, 23, 24, 19]。运行下面这段程序: def min_len(a, target): lo = 0 s = 0 best = le

阅读更多 →
为什么两端都只往右走还是 O(n)

为什么两端都只往右走还是 O(n)

可变窗口的两个指针都只往右,总代价是 O(n),因为【0】。

阅读更多 →