#CPP1D. 相邻刻度

相邻刻度

题意:

给定 nn 个整数刻度,它们的输入顺序任意,同一个刻度可以出现多次。

将这些刻度从小到大排列为 b1,b2,…,bnb_1,b_2,\ldots,b_n,相同的刻度也分别保留。对于每个 1≤i<n1\le i<n,相邻刻度之间的间隔为 bi+1−bib_{i+1}-b_i。

请找出最大的间隔,并输出对应的左、右刻度。最大间隔有多个时,选择左刻度最小的一组。

输入格式:

第一行一个整数 nn(2≤n≤2×1052 \le n \le 2\times10^5),表示刻度数量。

第二行 nn 个整数 a1,a2,…,ana_1,a_2,\ldots,a_n(−109≤ai≤109-10^9 \le a_i \le 10^9),表示输入的刻度。

输出格式:

一行三个整数,依次表示最大间隔、对应的左刻度和右刻度,以一个空格分隔。

样例:

样例输入1:

6
10 1 6 6 15 11

样例输出1:

5 1 6

样例解释1:

排列后的刻度为 (1,6,6,10,11,15)(1,6,6,10,11,15),最大的相邻间隔为 6−1=56-1=5。

样例输入2:

2
-7 -7

样例输出2:

0 -7 -7