Keyboards can be rectangular, not necessarily square
authorNeil Smith <neil.git@njae.me.uk>
Fri, 2 Dec 2016 13:40:34 +0000 (13:40 +0000)
committerNeil Smith <neil.git@njae.me.uk>
Fri, 2 Dec 2016 13:40:34 +0000 (13:40 +0000)
advent02.hs

index 99df10c23390948b8ff3adaf72c3493a3796f041..3ea1559d4646e4dc5cb74da01fa2d638d97ad6c2 100644 (file)
@@ -21,7 +21,7 @@ kb2 = ["xxxxxxx",
 enumerate = zip [0..]
 
 mkKeyboard :: [String] -> Keyboard
-mkKeyboard kb = array ((0, 0), (length kb - 1, length kb - 1))
+mkKeyboard kb = array ((0, 0), (length kb - 1, length (kb!!0) - 1))
     [((i, j), c) | (i, r) <- enumerate kb, (j, c) <- enumerate r]
 
 keyboard1 = mkKeyboard kb1