Хранилище значений во времени

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

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

Нужно реализовать хранилище, которое помнит все значения ключа в разные моменты времени. Функция получает список операций operations и список аргументов values: values[i] относится к operations[i]. Хранилище вначале пусто. Операции:

  • "set" с аргументами [key, value, timestamp] запоминает значение value ключа key в момент timestamp и возвращает 0. Для одного ключа моменты в операциях set строго возрастают.
  • "get" с аргументами [key, timestamp] возвращает значение, записанное для key в самый поздний момент, который не больше timestamp. Если такого момента нет (или ключ не встречался), верните -1.

Значения неотрицательны. Верните список результатов, по одному на каждую операцию. Операций до 1000.

Пример: ["set", "get", "get", "set", "get"], [[1, 10, 5], [1, 5], [1, 4], [1, 20, 8], [1, 9]] → [0, 10, -1, 0, 20].


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

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

Ещё задачи

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