Вступить в клуб →
сложнаяpythonМониторинг и алертинг: Prometheus, Grafana, SLO

Оценка квантиля по корзинам гистограммы, как в histogram_quantile

Напишите bucket_quantile(q, buckets).

  • buckets — список пар (le, count) по возрастанию le, счётчики накопительные (запросов не дольше le). Последняя корзина — (float("inf"), всего).
  • q — квантиль, 0 < q <= 1.
  • Алгоритм:
    • total — счётчик последней корзины; если он 0, верните None;
    • rank = q × total; найдите первую корзину, у которой count >= rank;
    • если это корзина inf, верните le предыдущей корзины;
    • иначе нижняя граница — le предыдущей корзины (для первой — 0), и результат — нижняя + (le − нижняя) × (rank − count_пред) / (count − count_пред), где count_пред — счётчик предыдущей корзины (для первой — 0).

заготовка решения

def bucket_quantile(q, buckets):
    # ваш код
    return None

🔒 Проверка ответа — для участников клуба

  • Автотесты прямо в браузере
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела