给个简介的公式,用前缀和prefix数组。对于子数组[i, j],如果满足均值条件,则有(prefix[j] - prefix[i - 1]) = u / v * (j - i + 1)。这个公式化简以下就有prefix[j] * v - u * j = prefix[i - 1] * v - u * (i - 1)。可以看到左右两边形式都是一样的,只和j和(i- 1)有关,所以可以线性解法,遍历每个位置用哈希表记录prefix[x] * v - u * x,然后对比前面记录的相同的个数。除此之外,还有个边界条件,是i=0的情况,只要判断prefix[j] * v - u * j是否等于0,是则result+1

相关推荐

10-15 10:23
门头沟学院 Java
牛可乐的头像真牛:赶紧举报,这公司绝对是诈骗的,等你签约后工作一两个月后根据合同漏洞把你开除,并且要求你赔偿3w培训费,996是为了提前筛选心甘情愿签下合同容易受骗的群体,纯粹面向校招生精心设计的骗局
你见过哪些工贼行为
点赞 评论 收藏
分享
包行:平时怎么刷算法题的哇,字节的手撕听说都很难
字节跳动工作体验
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务