CF1772D.Absolute Sorting
普及/提高-
通过率:0%
时间限制:2.00s
内存限制:512MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an array a consisting of n integers. The array is sorted if a1≤a2≤⋯≤an.
You want to make the array a sorted by applying the following operation exactly once:
- choose an integer x, then for every i∈[1,n], replace ai by ∣ai−x∣.
Find any value of x that will make the array sorted, or report that there is no such value.
给你一个包含 n 个整数的数组 a。当满足 a1≤a2≤⋯≤an 时,称该数组是已排序的。
你希望通过恰好执行一次如下操作,使数组 a 变为已排序的:
- 选择一个整数 x,然后对每个 i∈[1,n],将 ai 替换为 ∣ai−x∣。
请找出任意一个能使数组变为已排序的 x 值;若不存在这样的 x,则报告无解。
输入格式
The first line contains one integer t (1≤t≤2⋅104) — the number of test cases.
Each test case consists of two lines. The first line contains one integer n (2≤n≤2⋅105). The second line contains n integers a1,a2,…,an (1≤ai≤108).
Additional constraint on the input: the sum of n over all test cases does not exceed 2⋅105.
第一行包含一个整数 t(1≤t≤2⋅104)—— 表示测试用例的数量。
每个测试用例由两行组成。第一行包含一个整数 n(2≤n≤2⋅105)。第二行包含 n 个整数 a1,a2,…,an(1≤ai≤108)。
输入的额外约束:所有测试用例的 n 值之和不超过 2⋅105。
输出格式
For each test case, print any integer x (0≤x≤109) that makes the array sorted. It can be shown that if such an integer x exists, there is at least one such integer between 0 and 109.
If there is no such integer, then print −1. If there are multiple suitable values of x, print any of them.
对于每个测试用例,输出任意一个整数 x(0≤x≤109),使得数组变为有序。可以证明:若这样的整数 x 存在,则至少存在一个满足条件的整数 x 位于 0 到 109 之间。
若不存在这样的整数,则输出 −1。若存在多个满足条件的 x,输出其中任意一个即可。
输入输出样例
输入#1
8 5 5 3 3 3 5 4 5 3 4 5 8 1 2 3 4 5 6 7 8 6 10 5 4 3 2 1 3 3 3 1 3 42 43 42 2 100000000 99999999 6 29613295 52036613 75100585 78027446 81409090 73215
输出#1
4 -1 0 42 2 -1 100000000 40741153
说明/提示
In the first test case, after using x=4, the array becomes [1,1,1,1,1].
In the third test case, after using x=0, the array becomes [1,2,3,4,5,6,7,8].
In the fourth test case, after using x=42, the array becomes [32,37,38,39,40,41].
在第一个测试用例中,使用 x=4 后,数组变为 [1,1,1,1,1]。
在第三个测试用例中,使用 x=0 后,数组变为 [1,2,3,4,5,6,7,8]。
在第四个测试用例中,使用 x=42 后,数组变为 [32,37,38,39,40,41]。
输入解题思路,AI测评打分。不知道怎么写?