Не могу разобраться с Динамикой по профилю. В интернете материала мало, понимаю по теории с informatics(https://informatics.msk.ru/mod/resource/view.php?id=5113) и neerc.ifmo. Понимаю на примере задачи паркет о замощении доминошками 2*1, 1*2. На e-maxx нашел следующий код. (http://e-maxx.ru/algo/profile_dynamics) По моим расчетам, асимптотика составляет O(n*m*2^(2n)), так как calc в худшем случае будет вызаваться по 2 раза по всей длине n. Так ли это? В комментариях указано O(n*m*2^n). Работает быстро И не могу понять дп по излом. профилю. Я читал теорию, о увеличении профилей в 2n, за счёт появления места излома — от 1 до n, и дополнительного бита в маске. Тем не менее, нигде код не нашел. На codeforces нашел такой код, и что то мне подсказывает, что это и есть дп по излому. (https://codeforces.me/gym/100124/submission/2804558)
Код взят к задачи о доминошках. Не могу понять, почему профилей (1 << n), а не (2 << n), что тогда j,и почему при подсчёте маски следующего столбца мы добавляем результат в этот же столбец? Всем благодарен