Ctrl K

Карточные башни

Средняя
У вас есть cards игральных карт, и из всех них нужно построить карточную башню. Башня собирается рядами. Основной элемент — «шалашик» из двух карт, прислонённых друг к другу. В ряду из t шалашиков между каждыми двумя соседними лежит одна горизонтальная карта, так что такой ряд занимает 3t - 1 карт. Каждый шалашик верхнего ряда должен стоять на горизонтальной карте ряда под ним, поэтому в каждом следующем ряду шалашиков строго меньше, чем в предыдущем. Шалашики в ряду ставятся вплотную, начиная с левого края, поэтому башню полностью определяет число шалашиков в каждом ряду. Верните количество разных башен, на которые уходят ровно все cards карт. Башни различаются, если хотя бы в одном ряду у них разное число карт.
Пример 1
cards=7 → 1

Нижний ряд из двух шалашиков — это 2 · 2 + 1 = 5 карт, сверху один шалашик — ещё 2. Всего 7, и других вариантов нет.

Пример 2
cards=21 → 2

Ряды по 4, 3 и 1 шалашику: 11 + 8 + 2 = 21. Ряды по 5, 2 и 1: 14 + 5 + 2 = 21. Больше способов нет.

Пример 3
cards=4 → 0

Один шалашик — 2 карты, ряд из двух — 5. Ровно 4 карты потратить нельзя.

Ограничения
  • 1 ≤ cards ≤ 500
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСколько маршрутов по сетке СредняяСколько форм у дерева поиска СредняяВсе результаты расстановки скобок СредняяЧисла из двоек, троек и пятёрок СредняяСумма из наименьшего числа квадратов Средняя
загружаем Python…
Вход
cards=7
Ожидается
1

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 92 теста на сервере, включая скрытые.