в искомом слове надо предварительно убрать все повторы символов на соседних позициях ("aaabbcc" превращается в "abc"), иначе понадобились бы ещё переходы (x, y, k) -> (x, y, k+1)
Странно, что никто не сократил это до одного условия
потому что это просто удачное совпадение, что там 3 строки одинаковые. Вернее сказать, неудачный пример ) Чел спрашивает, как быть с тернарниками вообще.
Корень, у тебя conn.commit() в самом конце. То есть сначала отрабатывает весь поиск подходящих (a, b, c). И если ты перезагрузишь комп до завершения цикла, то ничего не сохранится в базу.
Корень, если ты перезагружаешь комп, то в любом случае непонятно, на чем всё закончилось и откуда продолжить. Впрочем, это легко выяснить, если заселектить из solutions максимальную пару (a, b)
Ещё я бы не менял "==" на пару "<=" и ">=", а сразу схлопывал две вершины в одну (при этом ребра "поглощаемой" вершины переходят на "основную"). При схлопывании "X === число" основной вершиной всегда делать число
Danya Wyse, рега всегда проверяет наличие паттерна внутри строки, а не соответствие строки паттерну.
Внутри твоей строки есть подстрока из цифр длиной от 1 до 12.
^ и $ добавляют доп. условия, паттерн получается такой: "начало строки, после которого от 1 до 12 цифр, потом конец строки". И уже такого паттерна в строке "12345678910111213" не найдется.
Максим Сагайдак, "=" вместо "==" (или "===") - это классическая опечатка в С-подобных языках, у неё богатая история.
конкретно в твоем кейсе помог бы TypeScript. Но он не спасает, например, от if (year = 3), тут надо использовать линтер. Так же, есть практика писать в условиях не if (year === 3), а if (3 === year), тогда сразу вывалится ошибка, если будет =.
если в колоде 52 карты, то там ещё есть карты 2, 3, 4, 5, король, туз. Они ведь тоже могут участвовать в "стрит флеш"?