All Downloads are FREE. Search and download functionalities are using the official Maven repository.

g0201_0300.s0228_summary_ranges.readme.md Maven / Gradle / Ivy

228\. Summary Ranges

Easy

You are given a **sorted unique** integer array `nums`.

Return _the **smallest sorted** list of ranges that **cover all the numbers in the array exactly**_. That is, each element of `nums` is covered by exactly one of the ranges, and there is no integer `x` such that `x` is in one of the ranges but not in `nums`.

Each range `[a,b]` in the list should be output as:

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

**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" 

**Example 3:**

**Input:** nums = \[\]

**Output:** \[\] 

**Example 4:**

**Input:** nums = \[-1\]

**Output:** \["-1"\] 

**Example 5:**

**Input:** nums = \[0\]

**Output:** \["0"\] 

**Constraints:**

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy