Стопка вложенных стаканчиков

Задача по программированию с проверкой онлайн

Сложность
Лёгкая
Языки
Python
JavaScript
TypeScript
Java
Go
Темы
Классы и ООП
Стек, очередь, связные списки

Стаканчики разных размеров (положительные целые) ставят друг в друга в одну стопку: на стопку можно поставить только стаканчик строго меньше верхнего. Сначала стопка пуста. Реализуйте операции:

  • put (размер): если стопка пуста или размер строго меньше верхнего, поставить стаканчик и вернуть 1; иначе не ставить и вернуть 0;
  • take: снять верхний стаканчик и вернуть его размер, а для пустой стопки вернуть 0;
  • top: вернуть размер верхнего стаканчика (0, если стопка пуста), ничего не снимая;
  • count: вернуть число стаканчиков в стопке.

Верните список результатов, по одному на операцию. values[i] — аргументы операции i.

Пример: ["put", "put", "put", "take", "put", "top", "count"], [[5], [3], [4], [], [4], [], []] → [1, 1, 0, 3, 1, 4, 2].


Источник: задача CodeShare

Решить онлайнБесплатно и без регистрации: пишете код в браузере и проверяете его тестами (без аккаунта — несколько задач в день).

Ещё задачи

Все задачи для тренировки