ОТВЕТЫ НА РУБРИКУ МИНУС ОШИБКА 🔥
ОТВЕТЫ НА РУБРИКУ МИНУС ОШИБКА 🔥 1. При сдвиге левого указателя l мы забываем уменьшать счетчик count_A, если выкидываемый символ был буквой «A». Из-за этого count_A только растет, и окно никогда не сможет сдвинуться корректно. 2. В Python строки индексируются с 0. Инициализация l = 1 пропускает самый первый символ строки. Если строка начинается с подходящей последовательности, первый символ будет проигнорирован, а при сдвиге l может возникнуть путаница. 3. Указатель l сдвигается на +1 до того, как мы проверяем символ s[l]. В итоге мы проверяем и выкидываем из подстроки не тот символ, который был на позиции l, а следующий за ним. Также подстрока перестает быть валидной, если счетчик стал больше 5, а не 3. 4. Условие count_X > 3 and count_Y > 3 означает, что окно будет сдвигаться только тогда, когда оба символа превышают лимит. Если, например, X стало 4, а Y осталось 2, цикл while не запустится, и мы посчитаем невподходящую подстроку. Для проверки невалидности подстроки нужно использовать or. 5. Условие «не более 5» означает, что 5 цифр — это допустимо. Но цикл while count_digits >= 5 будет сдвигать левую границу, как только цифр станет ровно 5, отсекая подходящие подстроки. Также при проверке символа под индексом левого указателя необходимо поставить двоеточие в конце if.