(->> probs
(remove (partial = best))
(reduce (fn [best prob] strong text
(if (> (* prob (get-threshold best)) best)
(reduced default)
best)) best))
Скорее всего, полно ошибок, но суть в том, чтобы удалить те, где вероятность равна наилучшей, а затем уменьшить остальные из них до default
.
Хитрость для раннего возвращения из снижения заключается в использовании reduced