Задача 2

Есть объект с информацией об гонщике:

  • номер
  • имя
  • время гонки

Гонка длится в среднем от 5 до 20 минут.

В JSON-файле хранится массив из 10000 сортированных по времени гонки объектов (топ гонщиков). После каждого заезда результаты трёх лучших гонщиков добавляются в файл на места, занятые ими среди уже существующих 10000 результатов.

После каждой гонки оператор может захотеть увидеть:

  • места трёх лучших гонщиков в общем топе;
  • актуальное место в общем топе одного любого гонщика из предыдущих заездов.

Задача: описать алгоритм хранения и вычисления мест в топе. Когда выполняются расчёты и что расчитывается?

Доп. условия:

  • Можно хранить любые дополнительные данные;
  • Оператор должен видеть результат без задержек;
  • ЦП не должен загружаться более, чем на 2-3 сек единовременно; Приоритет на скорость работы и количество перезаписей памяти.

Posts

subscribe via RSS