【问题描述】
在数列 a1, a2, …, an 中,定义两个元素 ai 和 aj 的距离为 |i - j| + |ai - aj|,即元素下标的距离加上元素值的差的绝对值,其中 |x| 表示x的绝对值。
给定一个数列,请问找出元素之间最大的元素距离。
【输入格式】
第一行包含一个整数 n。
第二行包含 n 个整数 a1, a2, …, an,相邻的整数间用空格分隔,表示给定的数列。
【输出格式】
一个整数,表示答案。
【样例输入】
5
9 4 2 4 7
【样例输出】
9
【评测用例规模与约定】
对于 100%的数据,1 ≤ n,ai ≤ 10000
题解:
#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
int a[10005];
int main()
{
int n;
cin >> n;
for(int i = 0; i < n; i ++) cin >> a[i];
int ans = 0;
for(int i = 0; i < n; i ++)
{
for(int j = i; j < n; j ++)
{
ans = max(ans, abs(i - j) + abs(a[i] - a[j]));
}
}
cout << ans << endl;
return 0;
}