Exactly three adjacent 3 in lists: Difference between revisions

Content added Content deleted
(→‎{{header|Wren}}: Code is in fact correct - always returns false if there are more than 3 threes, adjacent or not. Added more examples to demonstrate this is so.)
Line 49: Line 49:
nnPeers :: Int -> [Int] -> Bool
nnPeers :: Int -> [Int] -> Bool
nnPeers n xs =
nnPeers n xs =
let match = (n ==)
let p = (n ==)
in match (length (filter match xs))
in p (length (filter p xs))
&& any
&& any
( ((&&) . match . length)
((&&) . p . length <*> any p)
<*> any match
)
(group xs)
(group xs)