Department numbers: Difference between revisions

→‎{{Haskell}}: Added a Haskell draft
No edit summary
(→‎{{Haskell}}: Added a Haskell draft)
Line 45:
}
return 0;
}</lang>
}
</lang>
{{out}}
<pre>
Line 65 ⟶ 64:
SOLUTION #14: 7 4 1
</pre>
 
=={{Haskell}}==
<lang Haskell>options :: [(Int, Int, Int)]
options =
let ds = [1 .. 7]
in [2, 4, 6] >>=
(\x ->
ds >>=
(\y ->
if x /= y
then let z = 12 - (x + y)
in [ (y, x, z)
| y /= z && elem z ds ]
else []))
 
main :: IO ()
main = do
mapM_ print options
mapM_ putStrLn ["\nNumber of options: ", show (length options)]</lang>
{{Out}}
<pre>(3,2,7)
(4,2,6)
(6,2,4)
(7,2,3)
(1,4,7)
(2,4,6)
(3,4,5)
(5,4,3)
(6,4,2)
(7,4,1)
(1,6,5)
(2,6,4)
(4,6,2)
(5,6,1)
 
Number of options:
14</pre>
 
=={{header|Lua}}==
9,659

edits