Публикуем список дополнительных кат от тех, кто проходил обучение до вас) Все это не обязательно к выполнению, это просто для вашего собственного развития. Список будет дополняться. :)
-
Позволяет ещё немного потренироваться работать со списками. Можно написать рекурсивное решение, либо попробовать работать со свёртками, либо просто глубже поковырять стандартную библиотеку и найти в ней функции, позволяющие легко справиться с задачей.
-
Нужно проверить все ли скобки в выражении закрываются. Можно решать разными способами.
Она заставляет задуматься, что является аналогом стека в хаскеле, и тренирует навыки обращения со свертками.
-
Product of consecutive Fib numbers
Нужно найти является ли переданное число произведением соседних чисел в последовательности Фибоначчи.
Задача тренирует навыки создания рекурсии, или обращения с функциями из
Data.List
. -
Перевернуть все слова по отдельности. Пробелы оставить как есть. У этой каты есть красивое решение с использованием комбинатора из Data.Function. Будет полезно познакомиться с этим модулем.
-
Интересная с задача с простым условием, для которой сразу понятен императивный алгоритм с вложенными циклами, но не сразу — функциональный.
Помечена как 4-ый кью, но на самом деле достаточно первых глав LYAH и умения работать со списками.
-
В задаче нужно найти индекс элемента в списке, где сумма элементов списка слева будет равна сумме элементов списка справа от найденного элемента. Если же такого элемента нет, то вывести -1.
В этой кате можно отработать работу со списками, поискать вспомогательные функции в модуле Data.List или же просто посмотреть интересные решение других людей.
-
Go so far around to the right that you end up left
Необходимо реализовать левую свертку через правую. Для решения нужно ознакомиться с реализацией обеих сверток и хорошо понимать, как работает каждая из них.
Для решения нужно хорошо разобраться в принципе работы обеих сверток, так как использовать reverse = читерить.
-
Нужно проверить предложенный маршрут (движение по сторонам света) на два условия: длительность (10 минут при минуте на одно перемещение) и совпадение начальной и конечной точки (вернуться туда, откуда пришёл).
Тренирует работу со списками или использование
Data.List
. -
Highest Rank Number in an Array
Небольшая ката для практики бесточечного стиля и работы со стандартными модулями типа
Data.List
,Data.Ord
и т.д. на ваш выбор. -
Простая ката, нацеленная на поиск дубликатов в массиве, что часто встречается в реальных задачах.
-
Next bigger number with the same digits
Ката с очевидным брутфорс-решением. Попытайтесь найти наиболее оптимальный алгоритм, потому как если написать слишком просто, то все тесты пройти не успеет.
-
У FindOutlier множестово разных решений функциями из Data.List, или можно в лоб, сверткой, тренирует паттерн матчинг и функции как объекты первого класса.
-
Most frequently used words in a text
Достаточно простая ката для 4 кью. Тренирует обработку строки с использованием
Data.Char
иData.List
. -
Fibonacci, Tribonacci and friends
Логическое продолжение каты Tribonacci, достаточно интересное и неординарное решение, тренирует мозги.
-
Это простая ката 6 кью (30 минут на решение достаточно) позволит Вам потренироваться в создании пользовательского типа данных. Основной результат - это понимание реализации каких классов нужно предусмотреть для созданного типа, чтобы данные могли отправляться в функцию
sort
.