定义一个数组的的陡峭值为:相邻两个元素之差的绝对值之和。 现在小美拿到了一个数组,她可以最多进行1次操作:选择一个区间,使得区间内所有元素加1。 小美希望最终数组的陡峭值尽可能小,你能帮帮她吗?
第一行输入一个正整数 t ,代表询问次数。 对于每次询问输入两行: 第一行输入一个正整数 n ,代表数组长度。 第二行输入 n 个正整数 a_i ,代表小美拿到的数组。 1≤ t ≤ 1000 2≤ n ≤ 10^5 1≤ a_i ≤ 10^9 保证所有询问的 n 的总和不超过 10^5
输出 t 行,输出一个整数,代表该次查询陡峭值的最小值。
2 5 1 4 2 3 4 3 1 2 1
5 1
考点:数组 · 贪心 · 前缀和
数据规模 n ≤ 1e5 | 限制 1 秒 / 256MB | 标准输入输出
推荐方向:贪心
每一步都取当前最优,靠问题性质保证局部最优能拼成全局最优。
思路框架(贪心 通法 · 非本题专属)
实现要点:贪心题关键在于排序规则:按什么关键字排序决定了策略是否正确。
复杂度:时间 O(n log n)(含排序) | 空间 O(1) ~ O(n)
该范式的通法易错点
对照本题
样例 1:输入 2 / 5 / 1 4 2 3 4 / 3 / 1 2 1 → 输出 5 / 1
第一组询问,选择[3,4]区间即可,数组变成{1,4,3,4,4}。
第二组询问,选择[1,1]区间即可,数组变成{2,2,1}。
解析由校招宝本地引擎整理(依据源站考点标签 / 人工判题标注 / 题面规模信号),非官方题解,仅供思路参考。
本题来源:2025年春招-美团-技术岗笔试;2025年春招-美团-测试岗笔试;2025年春招-美团-前端岗笔试 等。