LRU-кэш (симуляция операций)

Словари Сложная
Реализуйте LRU-кэш с ограниченной вместимостью capacity. Дан список операций operations, каждая — ["put", key, value] или ["get", key]. Выполните операции по порядку; при put, если кэш заполнен и нужно вставить новый ключ, вытесните наименее недавно использованный элемент. Верните список результатов всех операций get по порядку (значение или -1, если ключа нет).
Сигнатура функции
lru_simulate(capacity: int, operations: list) -> list[int]
Примеры
ВходОжидаемый результат
[2, [["put", 1, 1], ["put", 2, 2], ["get", 1], ["put", 3, 3], ["get", 2], ["put", 4, 4], ["get", 1], ["get", 3], ["get", 4]]][1, -1, -1, 3, 4]
[1, [["put", 1, 10], ["get", 1], ["put", 2, 20], ["get", 1], ["get", 2]]][10, -1, 20]
1решили
1пытались
100%успешность
Войдите, чтобы решить →