题库练习 Motarack's Birthday
← 上一题 下一题 →

A13194 | Motarack's Birthday

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Dark is going to attend Motarack's birthday. Dark decided that the gift he is going to give to Motarack is an array $a$ of $n$ non-negative integers.

Dark created that array $1000$ years ago, so some elements in that array disappeared. Dark knows that Motarack hates to see an array that has two adjacent elements with a high absolute difference between them. He doesn't have much time so he wants to choose an integer $k$ ( $0 \leq k \leq 10^{9}$ ) and replaces all missing elements in the array $a$ with $k$ .

Let $m$ be the maximum absolute difference between all adjacent elements (i.e. the maximum value of $|a_i - a_{i+1}|$ for all $1 \leq i \leq n - 1$ ) in the array $a$ after Dark replaces all missing elements with $k$ .

Dark should choose an integer $k$ so that $m$ is minimized. Can you help him?

输入格式

The input consists of multiple test cases. The first line contains a single integer $t$ ( $1 \leq t \leq 10^4$ ) — the number of test cases. The description of the test cases follows.

The first line of each test case contains one integer $n$ ( $2 \leq n \leq 10^{5}$ ) — the size of the array $a$ .

The second line of each test case contains $n$ integers $a_1, a_2, \ldots, a_n$ ( $-1 \leq a_i \leq 10 ^ {9}$ ). If $a_i = -1$ , then the $i$ -th integer is missing. It is guaranteed that at least one integer is missing in every test case.

It is guaranteed, that the sum of $n$ for all test cases does not exceed $4 \cdot 10 ^ {5}$ .

输出格式

Print the answers for each test case in the following format:

You should print two integers, the minimum possible value of $m$ and an integer $k$ ( $0 \leq k \leq 10^{9}$ ) that makes the maximum absolute difference between adjacent elements in the array $a$ equal to $m$ .

Make sure that after replacing all the missing elements with $k$ , the maximum absolute difference between adjacent elements becomes $m$ .

If there is more than one possible $k$ , you can print any of them.

输入输出样例

输入 #1
7
5
-1 10 -1 12 -1
5
-1 40 35 -1 35
6
-1 -1 9 -1 3 -1
2
-1 -1
2
0 -1
4
1 -1 3 -1
7
1 -1 7 5 2 -1 5
输出 #1
1 11
5 35
3 6
0 42
0 0
1 2
3 4
C++ 编辑器
输入
输出