From 818e93ec4aa870d020be71981d4c2d1d72390ed2 Mon Sep 17 00:00:00 2001 From: Laura Orvokki Kursula Date: Tue, 3 Dec 2024 22:06:37 +0100 Subject: 1-1 --- 1-1.hs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 1-1.hs diff --git a/1-1.hs b/1-1.hs new file mode 100644 index 0000000..157dd52 --- /dev/null +++ b/1-1.hs @@ -0,0 +1,18 @@ +-- Gnome sort for christmas ;3 +gnomeSort :: Ord a => [a] -> [a] +gnomeSort = gs [] + +gs :: Ord a => [a] -> [a] -> [a] +gs [] (x:front) = gs [x] front +gs (p:back) (q:front) | p <= q = gs (q:p:back) front +gs (p:back) (q:front) | p > q = gs back (q:p:front) +gs xs [] = reverse xs + +main :: IO () +main = do + ls <- getContents + let ns = map (map read . words) . lines $ ls + let xs = map head ns + let ys = map last ns + let ms = zipWith ((abs .) . (-)) (gnomeSort xs) (gnomeSort ys) + print (sum ms) -- cgit v1.2.3