Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defn fullhouse2
- ([cards]
- (let [ranked (group-by :rank cards),
- counted (group-by (comp count second) ranked),
- {pairs 2, triples 3} (into {} (for [[c r] counted] {c (into {} r)}))]
- (when (>= (+ (count pairs) (count triples)) 2)
- (let [[r triple] (apply max-key first triples)
- paircands (merge pairs (dissoc triples r))
- [_ pair] (apply max-key first paircands)]
- (into triple (take 2 pair)))))))
Advertisement
Add Comment
Please, Sign In to add comment