 # Summary Ranges Lab

Easy
1
33.3% Acceptance

In this lab, you will implement a function called `summaryRanges` that takes a sorted unique integer array `nums` as its input and returns the smallest sorted list of ranges that cover all the numbers in the array exactly. This means that each element of `nums` should be covered by exactly one of the ranges, and there should be no integer `x` such that `x` is in one of the ranges but not in `nums`.

A range `[a,b]` is the set of all integers from `a` to `b` (inclusive). Each range `[a,b]` in the list should be output as:

• `"a->b"` if `a != b`
• `"a"` if `a == b`

You will be using ESM import/export for this lab, and you will be required to complete the evaluation script provided.

## Lab Description

Implement a function `summaryRanges`:

``````/**
* @param {number[]} nums
* @return {string[]}
*/
export function summaryRanges(nums) {

}``````

### Constraints:

• `0 <= nums.length <= 20`
• `-231 <= nums[i] <= 231 - 1`
• All the values of `nums` are unique.
• `nums` is sorted in ascending order.

### Example 1:

Input: nums = [0,1,2,4,5,7]

Output: ["0->2","4->5","7"]

Explanation: The ranges are:

• [0,2] --> "0->2"
• [4,5] --> "4->5"
• [7,7] --> "7"

### Example 2:

Input: nums = [0,2,3,4,6,8,9]

Output: ["0","2->4","6","8->9"]

Explanation: The ranges are:

• [0,0] --> "0"
• [2,4] --> "2->4"
• [6,6] --> "6"
• [8,9] --> "8->9"

## Challenges

1. Implement the `summaryRanges` function.
2. Complete evaluation script for initial testing and further challenges.
3. Ensure that there are no errors and that the code executes as expected.