n заказов на печать с номерами от 0 до n - 1: jobs[i] = [appear, length] значит, что заказ i появляется в момент appear и печатается ровно length единиц времени.
Принтер работает так:
- если он свободен и ждущих заказов нет, он простаивает до появления следующего;
- если он свободен и заказы ждут, он берёт самый короткий; при равной длине — с меньшим номером;
- начатый заказ печатается до конца без перерывов;
- закончив один заказ, принтер в тот же момент может взять следующий (заказы, появившиеся ровно в этот момент, тоже участвуют в выборе).
Верните номера заказов в том порядке, в котором принтер их напечатает.jobs=[[2, 5], [3, 1], [4, 2], [4, 1]] → [0, 1, 3, 2]
В момент 2 есть только заказ 0, печать идёт до 7. К этому времени ждут 1, 2 и 3; самые короткие — 1 и 3 (по 1), берём меньший номер 1, затем 3, затем 2.
jobs=[[1, 2], [10, 3], [10, 1]] → [0, 2, 1]
После заказа 0 принтер простаивает до момента 10, затем берёт более короткий заказ 2 и потом 1.
jobs=[[2, 5], [3, 1], [4, 2], [4, 1]]
[0, 1, 3, 2]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 109 тестов на сервере, включая скрытые.