1.29.codeforces div2 C,D 题解,如何高效掌握?
摘要:C. Restricted Sorting 贪心 题目描述 给你一个长度为 (n) 的数组 (a)。对于一个整数 (k),当且仅当可以通过执行以下操作任意次(包括零次)将 (a) 按非降序排序时,我们称它为“贪心的”(pig
C. Restricted Sorting
贪心
题目描述
给你一个长度为 \(n\) 的数组 \(a\)。对于一个整数 \(k\),当且仅当可以通过执行以下操作任意次(包括零次)将 \(a\) 按非降序排序时,我们称它为“贪心的”(piggy):
首先,选择两个下标 \(i\) 和 \(j\)(\(1 \leq i < j \leq n\)),使得 \(|a_i - a_j| \geq k\);
然后,交换 \(a_i\) 和 \(a_j\)。
你需要找出最大的“贪心”整数 \(k\)。如果这样的整数不存在,输出 \(-1\)。
输入格式
每个测试包含多个测试用例。第一行包含测试用例的数量 \(t\)(\(1 \leq t \leq 10^4\))。接下来是每个测试用例的描述。
每个测试用例的第一行包含一个整数 \(n\)(\(1 \leq n \leq 2 \cdot 10^5\))——数组 \(a\) 的长度。
第二行包含 \(n\) 个整数 \(a_1, a_2, \dots, a_n\)(\(1 \leq a_i \leq 10^9\))——数组 \(a\) 的元素。
保证所有测试用例的 \(n\) 之和不超过 \(2 \cdot 10^5\)。
输出格式
对于每个测试用例,输出一个整数——最大的“贪心”整数 \(k\)。
如果这样的整数不存在,输出 \(-1\)。
