var y: []int func main() var n: int :: cui@inputInt() do @y :: #[n]int for i(0, n - 1) do @y[i] :: cui@inputInt() end for do @y.sort() var yMin: int :: @y.min() var yMax: int :: @y.max() while(yMax - yMin > 2) var y1: int :: yMin + (yMax - yMin) * 1 / 3 var y2: int :: yMin + (yMax - yMin) * 2 / 3 if(f(y1) > f(y2)) do yMin :: y1 else do yMax :: y2 end if end while var ans: int :: [f(yMin), f(yMin + 1), f(yMax + 1), f(yMin + 2)].min() do cui@print("\{ans}\n") func f(y: int): int var res: int :: 0 for i(0, ^@y - 1) do res :+ (@y[i] - y).abs() end for ret res end func end func