Сообщения приходят асинхронно с номером. Нужно выводить их строго по порядку, начиная с 1.
Реализуйте класс OrderedMessages:
receive(id, text) — принять сообщение. Если id — следующий ожидаемый, вернуть все сообщения, которые можно вывести подряд (массив строк). Иначе — буферизовать и вернуть пустой массив.const om = new OrderedMessages();
om.receive(1, "a") // => ["a"]
om.receive(3, "c") // => []
om.receive(2, "b") // => ["b", "c"]
receive(1,"a")
["a"]
receive(3,"c") then receive(2,"b")
["b","c"]