
😎풀이
start
에 시작 범위 정의
nums
를 순회
2-1. 시작 범위가 이전 순회한 요소의 값과 같을 경우 정답 배열에 단일 범위 입력
2-2. 시작 범위가 이전 숫자와 다르면서 연속적이지 않을 경우 시작 범위와 종료 범위 입력
function summaryRanges(nums: number[]): string[] {
if (nums.length === 0) return [];
const result: string[] = [];
let start = nums[0];
for (let i = 1; i <= nums.length; i++) {
if (i === nums.length || nums[i] !== nums[i - 1] + 1) {
if (start === nums[i - 1]) {
result.push(`${start}`);
} else {
result.push(`${start}->${nums[i - 1]}`);
}
if (i < nums.length) {
start = nums[i];
}
}
}
return result;
}