
Restore IP Addresses (medium)
Problem Statement
Given a string s containing digits only, return a list of string containing the valid ip addresses that can be formed by inserting the dots(.) in between string characters.
A valid IP address consists of four parts, each ranging from 0 to 255, separated by dots. It's important to note that leading zeros in any part of the IP address are not allowed, except for the number 0 itself.
- For example,
"1.1.21.1", and"1.12.1.1"arevalidip addresses, and"1.1.021.1"is invalid ip address.
Examples
-
Example 1:
- Input:
"11211" - Expected Output:
["1.1.2.11", "1.1.21.1", "1.12.1.1", "11.2.1.1"] - Justification: These are all the valid ways to insert dots into the input string such that each segment forms a valid part of an IP address without leading zeros, except for the number 0 itself, and each segment is within the range of 0 to 255.
- Input:
-
Example 2:
- Input:
"1111" - Expected Output:
["1.1.1.1"] - Justification: Based on the string's length and value, there is only one way to form a valid IP address by inserting dots after each digit.
- Input:
-
Example 3:
- Input:
"0000" - Expected Output:
["0.0.0.0"] - Justification: Despite leading zeros being generally disallowed, in this case, each segment of the IP address is the number 0 itself, making it the only valid formation.
- Input:
Try it yourself
Try solving this question here:
Python3
Python3
. . . .
.....
.....
.....
Unlock this and all other premium problems.
No code editor for this lesson
This lesson focuses on concepts and theory