#scala
Вопрос:
Учитывая список строк: List("abcdefghijklmnoprstuwxy", "aabcdfffgg" ....
Верните список строк с наиболее уникальными символами ( если таких строк несколько, выведите только самые короткие). Я сделал что-то подобное, используя reduce, но не знаю, хорошо ли это работает, а также я не учитывал требование печатать самый короткий, если есть несколько строк с самыми уникальными символами. :
val string = lst.map(x => x.toLowerCase()).reduce((x,y) => if (x.distinct.size > y.distinct.size) x else y)
Комментарии:
1. Как это сделать: lst.map(x => x.в нижнем регистре()).filter((a,b) =>> a.distinct.size >>> b.distinct.size) ??
2. Вы можете использовать встроенный
maxByOption
метод следующим образом: scastie.scala-lang.org/BalmungSan/ODCDd2cPTy2TKHvEhqDzGg