import Data.List(sort) main :: IO () main = interact $ show . solve . map read . tail . words solve :: [Int] -> Int solve xs | all (\x -> x == head xs) xs = 0 | otherwise = minimum . filter (/= 0) . f . reverse . sort $ xs f :: [Int] -> [Int] f [x] = [] f (x:y:zs) = (x - y) : f (y:zs)