#USACO2243. 困牛放牧

困牛放牧

题目描述

Farmer John的 NN 头奶牛总是会迷路走到农场上遥远的地方去!

他需要你帮助将她们一起赶回来。

农场的草地大体是一块狭长的区域——我们可以将其想象成一条数轴,奶牛可以占据数轴上的任意整数位置。

NN 头奶牛现在正位于不同的整数位置,Farmer John想要移动她们,使得她们占据相邻的位置(例如,位置 3456783、4、5、6、7、8)。

不幸的是,奶牛们现在很困,Farmer John要让她们集中精力听从命令移动并不容易。

任意时刻,他只能使得一头处在“端点”(在所有奶牛中位置最小或最大)位置的奶牛移动。

当他移动奶牛时,他可以命令她走到任意一个未被占用的整数位置,只要在新的位置上她不再是一个端点。

可以看到随着时间的推移,这样的移动可以使奶牛们趋向越来越近。

请求出使得奶牛们集中到 NN 个相邻位置所进行的移动次数的最小和最大可能值。

输入格式

第一行包含一个整数 NN

接下来 NN 行,每行一个整数表示一头奶牛的位置。

输出格式

输出的第一行包含Farmer John需要将奶牛们聚集起来所需进行的最小移动次数。

第二行包含他将奶牛聚集起来能够进行的最大移动次数。

3
7
4
9​
1
2​

提示

3N1053≤N≤10^5

1位置1091 \leq 位置 \leq 10^9

最小移动次数为 1——如果Farmer John将位置 4的奶牛移动到位置 8,那么奶牛们就处在连续的位置 7、8、9。

最大移动次数为 2。例如,位置 9的奶牛可以被移动到位置 6,然后位置 7的奶牛可以被移动到位置 5。