А) будем строить в обратную сторону мы можем или домножать число на 2 или вычитать 1 и делить на 3, только если число четно и сравнимо с 1 по модулю 3. Заметим что учитывая условия раздвоений у нас будет не слишком много (порядка 1/4 от всех шагов), таким образом полный перебор успевает.
B) нужно проверить совпадает ли множество доминошек, далее найти первую доминошку слева которую надо поменять и поменять её (с помощью данных преобразований и условие на совпадение множеств доминошек это всегда можно сделать операции видимо надо делать с помощью rope
C) нужно найти точку пересечения серединных пперпендикуляров или понять что ее нет
D) надо свести граф к 16 вершинам (дейкстрой), а дальше с помощью масочки посещенных чекпоинтов провести
E) число компонент связности, решает любой обход
F) надо определить перестановку ABCDE возвести ее в степень M/5 а потом добрать оставшимися и посмотреть
G) просто посчитать
H) судя по всему девелопер выполняет задания по порядку, тогда это просто динамика, по минимальному времени выполнения i заданий l чашками кофе
I) надо возвести матрицу 2 х 2 в степень по модулю 10, ну или просто цикл найти у этой последовательности
J) для каждой точки найти ближайший справа первый и второй луз (аналогично с ничьими), для отрезка контрактов длины от первого луза до второго прибавить сумму к ответу
K) наибольшие палиндромы для каждого символа(как центрального) ходом за линию (похоже на построение z-функции) а далее структурками тоже все делается
L) Дейкстра - состояние количество монстров, количество жизней у первого и второго. максимизируем число имеющейся маны