Ctrl K

k-й код по последним цифрам

Средняя
На складе каждый товар помечен цифровым кодом. Коды лежат в массиве строк codes, все одинаковой длины; в начале кода могут быть нули. Дан массив запросов queries, где queries[i] = [k, t]. Чтобы ответить на запрос, оставьте у каждого кода только последние t цифр и сравните получившиеся числа (например, «02» — это 2). Найдите k-й по возрастанию код (считая с 1) и запишите его индекс в codes. Если два укороченных кода равны, меньшим считается тот, у которого индекс меньше. Запросы независимы: каждый раз коды берутся целиком. Верните массив ответов в порядке запросов.
Пример 1
codes=['5071', '1203', '9902'], queries=[[1, 2], [3, 1], [2, 4]] → [2, 1, 0]

По двум последним цифрам получаем 71, 03 и 02 — самый маленький код с индексом 2. По последней цифре: 1, 3, 2 — третий по величине у индекса 1. Целиком: 1203 < 5071 < 9902, второй — индекс 0.

Пример 2
codes=['40', '30', '10'], queries=[[2, 1]] → [1]

Последняя цифра у всех кодов 0, поэтому порядок решают индексы: 0, 1, 2. Второй — индекс 1.

Ограничения
  • 1 ≤ codes.length ≤ 100
  • 1 ≤ codes[i].length ≤ 100, все коды одной длины
  • codes[i] состоит только из цифр
  • 1 ≤ queries.length ≤ 100
  • queries[i].length == 2
  • 1 ≤ k ≤ codes.length
  • 1 ≤ t ≤ codes[i].length
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиK-е по величине длинное число СредняяK-й результат сверху СредняяСамые частые значения СредняяСортировка своими руками СредняяБлижайшие к базе точки Средняя
загружаем Python…
Вход
codes=['5071', '1203', '9902'], queries=[[1, 2], [3, 1], [2, 4]]
Ожидается
[2, 1, 0]

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 88 тестов на сервере, включая скрытые.