summaryrefslogtreecommitdiff
path: root/1-2.hs
diff options
context:
space:
mode:
Diffstat (limited to '1-2.hs')
-rw-r--r--1-2.hs14
1 files changed, 14 insertions, 0 deletions
diff --git a/1-2.hs b/1-2.hs
new file mode 100644
index 0000000..3fc718e
--- /dev/null
+++ b/1-2.hs
@@ -0,0 +1,14 @@
+count :: Eq a => a -> [a] -> Int
+count x = foldr f 0
+ where
+ f y n | x == y = n + 1
+ | otherwise = n
+
+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 = map (\x -> x * count x ys) xs
+ print (sum ms)