1 до stops, только в одну сторону — от меньших номеров к большим. Есть заказы orders, где orders[i] = [from, to, bonus]: пассажир хочет доехать с остановки from до остановки to и готов доплатить bonus.
За каждого перевезённого пассажира водитель получает to - from + bonus. В салоне одновременно может ехать только один пассажир, но высадить одного и посадить следующего можно на одной и той же остановке.
Верните наибольшую сумму, которую водитель может заработать, выбрав заказы наилучшим образом.stops=8, orders=[[1, 4, 2], [3, 8, 1], [4, 6, 5]] → 12
Везём первого пассажира с 1 до 4 (3 + 2 = 5), на остановке 4 берём третьего до 6 (2 + 5 = 7): итого 12. Второй заказ (5 + 1 = 6) пересекается с обоими и выгоднее не становится.
stops=10, orders=[[1, 10, 1], [2, 3, 1], [5, 7, 1]] → 10
Длинная поездка даёт 9 + 1 = 10, а две короткие вместе — 2 + 3 = 5. Выгоднее длинная.
stops ≤ 10⁵orders.length ≤ 3 · 10⁴orders[i].length = 3from < to ≤ stopsbonus ≤ 10⁵stops=8, orders=[[1, 4, 2], [3, 8, 1], [4, 6, 5]]
12
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 69 тестов на сервере, включая скрытые.