Algorithm 如何使用二进制搜索算法找到最大值((任意连续子数组之和)%m)?

Algorithm 如何使用二进制搜索算法找到最大值((任意连续子数组之和)%m)?,algorithm,binary-search,Algorithm,Binary Search,给定一个大小为N的数组和一个元素M,我们需要使用二进制搜索算法找到(任何连续子数组的和)%M的最大值 请在此处阅读完整的问题陈述: 例如: 如果数组A={3,3,9,9,5}和M=7,那么所有可能的连续子数组都是{3}、{3}、{9}、{9}、{5}、{3,3}、{3,9}、{3,9}、{3,9,5},那么答案将是从子数组{3,3}得到的6 一种算法会有很大帮助。在Hackerrank中,你可以点击编辑按钮查看答案。我不理解编辑解决方案,他们使用集合而不是二进制搜索。我不知道为什么。如果它是一个

给定一个大小为N的数组和一个元素M,我们需要使用二进制搜索算法找到(任何连续子数组的和)%M的最大值

请在此处阅读完整的问题陈述:

例如: 如果数组A={3,3,9,9,5}和M=7,那么所有可能的连续子数组都是{3}、{3}、{9}、{9}、{5}、{3,3}、{3,9}、{3,9}、{3,9,5},那么答案将是从子数组{3,3}得到的6


一种算法会有很大帮助。

在Hackerrank中,你可以点击编辑按钮查看答案。我不理解编辑解决方案,他们使用集合而不是二进制搜索。我不知道为什么。如果它是一个连续的子数组,没有强制顺序,你为什么要使用二进制搜索?问题是在二进制搜索类别下,这就是为什么我问Hackerrank你可以点击编辑按钮查看答案我不理解编辑解决方案,他们使用集合而不是二进制搜索我不知道为什么。如果它是连续子数组,没有强制顺序,你为什么要使用二进制搜索?问题是在二进制搜索类别下,这就是我为什么要问的原因