题解:蓝桥云课 155 最大距离

【题目来源】

蓝桥云课:1.最大距离 - 蓝桥云课

【题目描述】

在数列 \(a_1,a_2,…,a_n\) 中,定义两个元素 \(a_i\)\(a_j\) 的距离为 \(|i-j|+|a_i-a_j|\),即元素下标的距离加上元素值的差的绝对值,其中 \(|x|\) 表示 \(x\) 的绝对值。

给定一个数列,请问找出元素之间最大的元素距离。

【输入】

输入的第一行包含一个整数 \(n\)

第二行包含 \(n\) 个整数\(a_1,a_2,…,a_n\),相邻的整数间用空格分隔,表示给定的数列。其中,\(2<n≤1000\)\(0<数列中的数≤10^4\)

【输出】

输出—行包含一个整数,表示答案。

【输入样例】

5
9 4 2 4 7

【输出样例】

9

【算法标签】

《蓝桥 155 最大距离》 #2020# #模拟# #省模拟赛#

【解题思路】

image

【代码详解】

n = int(input())  # 输入n
a = [int(i) for i in input().split()]  # 输入列表
maxn = -1e9  # 定义最大值
for i in range(n):  # for循环遍历i
    for j in range(n):  # for循环遍历j
        dis = abs(i-j)+abs(a[i]-a[j])  # 按照题目要求进行计算
        maxn = max(maxn, dis)  # 统计最大值
print(maxn)  # 打印结果

【运行结果】

5
9 4 2 4 7
9
posted @ 2026-03-04 10:47  团爸讲算法  阅读(2)  评论(0)    收藏  举报