程序查找C ++中任意两个不同数字的索引之间的最大差

在本教程中,我们将讨论一个程序,以查找任意两个不同数字的索引之间的最大差。

为此,我们将提供n个整数值的数组。我们的任务是找到两个不同数字的索引之间的最大差。

示例

#include <bits/stdc++.h>
using namespace std;
//返回最大差异
int findMaximumDiff(int a[], int n) {
   int ind1 = 0;
   for (int i = n - 1; i > 0; i--) {
      if (a[0] != a[i]) {
         ind1 = i;
         break;
      }
   }
   int ind2 = 0;
   for (int i = 0; i < n - 1; i++) {
      if (a[n - 1] != a[i]) {
         ind2 = (n - 1 - i);
         break;
      }
   }
   return max(ind1, ind2);
}
int main() {
   int a[] = { 1, 2, 3, 2, 3 };
   int n = sizeof(a) / sizeof(a[0]);
   cout << findMaximumDiff(a, n);
   return 0;
}

输出结果

4