Кеш результатов с вытеснением старых

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

Сложность
Лёгкая
Языки
Python
JavaScript
TypeScript
Темы
Словари и множества
Функции и замыкания

Функция запоминает результаты в кеше, в котором помещается не больше capacity аргументов (capacity >= 1). Вызов с аргументом из calls: если результат для него уже в кеше — это попадание ("hit"), вычислять не нужно. Иначе это промах ("miss"): результат вычисляется и кладётся в кеш. Если в кеше стало больше capacity записей, удаляется самая старая по времени добавления. Попадание порядок не меняет.

Верните для каждого вызова "hit" или "miss".

Пример: ([1, 2, 1, 3, 1, 2], 2) → ["miss", "miss", "hit", "miss", "miss", "miss"].


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

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

Ещё задачи

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