import Data.Set (fromList, toAscList) findMinimumDistance :: [Int] -> Int findMinimumDistance [] = 0 findMinimumDistance (_ : []) = 0 findMinimumDistance (a : b : []) = b - a findMinimumDistance (a : b : xs) = min (b - a) $ findMinimumDistance (b : xs) main :: IO () main = print . findMinimumDistance . toAscList. fromList . map read . words . head . drop 1 . lines =<< getContents