空洞骑士
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

注:在本题中,我们会做一些与游戏本身不完全相同的设定,玩过游戏与否对理解题目没有影响。

小橙汁正在玩《空洞骑士》,小橙汁操作小骑士刚刚结束了一场战斗,小骑士所在的场景可以视为一个坐标范围为 的整数轴,共有 m 个吉欧(吉欧是游戏内的货币)掉落在整数轴的某些位置,其中第 i 个吉欧的位置为 p_i

小骑士将从位置 s 出发,收集所有吉欧并到达 t 位置(t 位置是出口),小骑士在一个单位时间内可以在整数轴上移动一个单位距离。一旦小骑士移动到 p 处,就可以不花费任何时间收集到这个位置的所有吉欧。

你需要给出 s 位置和 t 位置,使得在最优情况下小骑士从 s 出发,收集完所有 m 个吉欧后到达 t 位置的用时最长。

并且,s 位置和 t 位置不可以相同。但是,s 位置或 t 位置可以与吉欧所在的位置重合。st 没有大小关系。

输入描述:

第一行输入一个正整数 ,表示场景中共有 m 个吉欧。

第二行输入 m 个非负整数以空格相隔,第 i 个非负整数为 ,表示第 i 个吉欧所处的位置。(不保证 p_i 互不相同)

输出描述:

输出两个不同的非负整数 st,意义如上文所提及。若有多组方案,输出任意一组方案均可。
示例1

输入

复制
1
500000000

输出

复制
0 1000000000

说明

s=0,t=10^9 在样例中是最优解,小骑士从 0 位置移动到 500000000 位置,再从 500000000 位置移动到 10^9 位置。