当前位置: 首页 > 知识库问答 >
问题:

乘积为偶数的子数组数?

公良俊楚
2023-03-14

给定一个大小为n, n的数组

共有1个答案

栾鸣
2023-03-14

小心:从你的解释中,我的印象是你正在获取所有子数组,计算产品并检查它是否为偶数。

然而,有一条非常重要的数学规则:当你有一系列自然数时,只要有一个偶数,乘积就是偶数。

因此,我建议您编写以下算法:

  1. 在数组中搜索偶数。
  2. 计算包含该偶数的子数组的数量。
  3. 在数组中搜索下一个偶数。
  4. 计算子数组的数量,包含下一个偶数,但不包含上一个偶数。
  5. 继续操作,直到处理完数组中的所有偶数。
 类似资料:
  • 给定一个数组,我想计算子数组的数量(连续的),当取的乘积不会被k整除。 例如。设 A = 和 K = 2 则使乘积不能被 K 整除的子数组数为 2: 其余的都可以被2整除。 我首先尝试计算子数组(n)(n 1)/2的总数,然后使用mod减去可被k整除的子数组的数量,但它不起作用。我该如何解决这个问题? 这(错误地)计算了乘积可被K整除的子阵列数: 一个稍微相关的问题是这个问题,但它涉及加法,因此不

  • 题目链接 NowCoder 题目描述 给定一个数组 A[0, 1,..., n-1],请构建一个数组 B[0, 1,..., n-1],其中 B 中的元素 B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。要求不能使用除法。 解题思路 // java public int[] multiply(int[] A) { int n = A.length;

  • 问题内容: 给出了长度为 n 的数组。查找子数组元素的乘积之和。 说明 数组 A* = 长度 3的 [2,3,4] 。 * 长度为 2的 子数组= [2,3],[3,4],[2,4] [2,3] 中元素的乘积= 6 [3,4] 中元素的乘积= 12 [2,4] 中元素的乘积= 8 长度 2 = 6 + 12 + 8 = 26的子数组的总和 同样,对于长度 3 ,Sum = 24 因此,乘积以模 1

  • 一、题目 给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1],不能使用除法。 二、解题思路 B[i]的值可以看作下图的矩阵中每行的乘积。 下三角用连乘可以很容求得,上三角,从下向上也是连乘。 因此我们的思路就很清晰了,先算下三角中的连乘,即我们先算出B[i]中的一部分,然后倒过来

  • 本文向大家介绍LCM的最大长度子数组等于C ++中的乘积,包括了LCM的最大长度子数组等于C ++中的乘积的使用技巧和注意事项,需要的朋友参考一下 假设我们有一个数组A。我们必须找到子数组的最大长度,它的LCM与该子数组元素的乘积相同。如果找不到这种子数组,则返回-1。假设数组为{6,10,21},则长度为2,因为在那里有子数组{10,21},其LCM为210,乘积也为210。 该方法是直接的。我

  • 问题内容: 我有2个形状(5,1)的numpy数组,说:a = [1,2,3,4,5] b = [2,4,2,3,6] 我如何制作一个矩阵,将每个第i个元素与每个第j个元素相乘?喜欢: 不使用forloops?我可以使用重塑,缩小或乘法的任何组合吗? 现在,我沿着行和列创建每个数组的aa * b拼接,然后将元素明智地相乘,但是在我看来,肯定有一种更简单的方法。 问题答案: 使用numpy.oute