Решить 2 лабы на одном из следующих языков программирования: Java, Kotlin, C++, C#, Python.
1. Для произвольной шахматной доски n*m подсчитайте количество различных способов обойти все клетки шахматным конем из заданной клетки. Отдельно выведите количество замкнутых обходов.
2. Барби составила список своих вещей, указав их тип (платье, туфли, сумочка, шляпка) и цвет (белый, розовый, красный, синий, голубой, желтый, зеленый, черный). Теперь она просит Кена посчитать, сколько нарядов она может из них составить, пользуясь правилами: нельзя сочетать синий и голубой, зеленый и розовый, зеленый и красный; сумочка и платье должны отличаться по цвету. Помогите Кену с подсчетами, написав соответствующую программу.
* Сделайте программу универсальной с возможностью задать любые типы, цвета и правила).