// Нужно написать функцию
// На вход поступает массив чисел. Числа больше либо равны 0 и не повторяются.
// Если числа из исходного массива (не обязательно идущие по порядку)
// образуют непрерывную числовую последовательность, то следует их добавить в
// результат по паттерну 'Начало последотельности - Конец последовательности'
// Если число не входит в последовательность, то добавить его в результат через запятую
// Алгоритмическая сложность должна быть не выше O(n log n)
// Пример:
// Параметр: [9, 0, 6, 8, 2, 5, 4]
// Возвращаемый результат: '0, 2, 4-6, 8-9'
function phoneNum(arr) {
// Ваш код здесь
}
console.log(phoneNum([9, 0, 6, 8, 2, 5, 4])); // '0, 2, 4-6, 8-9'**Ответ
const testFunc = (nums) => {
const sortedNums = nums.sort((a, b) => a - b);
let res = "";
let start = sortedNums[0];
let end = sortedNums[0];
for (let i = 1; i < sortedNums.length; i++) {
if (sortedNums[i] === end + 1) {
end = sortedNums[i];
} else {
if (start === end) {
res += ${start},;
} else {
res += ${start}-${end},;
}
start = sortedNums[i];
end = sortedNums[i];
}
}
if (start === end) {
res += ${start},;
} else {
res += ${start}-${end},;
}
return res.slice(0, -1);
};
console.log(testFunc([9, 0, 6, 8, 2, 5, 4]));