如何计算特定元素之间的奇数或偶数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何计算特定元素之间的奇数或偶数?相关的知识,希望对你有一定的参考价值。

enter image description here

大家好!!!我当时在写比赛,实际上这不是一个难题,但我坚持了下来。请帮忙,这里我的代码仅通过了三个测试,但在第四次测试中失败了。答案不得使用函数和指针。提前致谢!

#include <iostream> 
using namespace std; 

int main() 
 
  long long int n;
  cin>>n;
  long long int a[n];

  for(int i=0;i<n;i++)
    cin>>a[i];
  
  long long int max=a[0],min=[0],ind1=0,ind2=0;

  for(int i=0;i<n;i++)
    if(a[i]>=max) 
      max=a[i];
      ind2=i;
    
    if(a[i]<=min) 
      min=a[i];
      ind1=i;
    
  


  int sum=0;
  if(ind1<ind2)
  for(int i=ind1+1;i<ind2;i++)
    if(a[i]%2==0) sum++;
  
  else if(ind1>ind2)
  for(int i=ind2+1;i<ind1;i++)
    if(a[i]%2==0) sum++;
  

  cout<<sum;

答案

似乎您要计算数组中最小和最大元素之间的偶数个元素?

由于您将初始最小值/最大值设置为垃圾,因此上次测试可能未通过。例如,在将a [0]初始化为零且数组中的所有元素均为负的情况下,报告的最大值将不正确。您需要将max设置为最小整数,反之亦然。

以上是关于如何计算特定元素之间的奇数或偶数?的主要内容,如果未能解决你的问题,请参考以下文章

使用for循环结构编写程序计算1到100之间的奇数之和、偶数之和,输出格式为“1到100奇数和=xxx;

在excel/openoffice calc中增加奇数或偶数?

如何设置偶数和奇数元素的样式?

剑指offer 14:调整数组顺序使奇数位于偶数前边

计算1 - 100之间所有奇数的和,偶数的和,3的倍数的和

python利用循环计算50到100中奇数的和和偶数的和?