A valid IP address consists of exactly four integers separated by single dots. Each integer is between 0 and 255 (inclusive) and cannot have leading zeros.
Given a string s containing only digits, return all possible valid IP addresses that can be formed by inserting dots into s. You are not allowed to reorder or remove any digits in s.
Example 1:
Input: 25525511135 Output: 255.255.11.135 255.255.111.35
Example 2:
Input: 0000 Output: 0.0.0.0
Example 3:
Input: 101023 Output: 1.0.10.23 1.0.102.3 10.1.0.23 10.10.2.3 101.0.2.3
Constraints:
- 1 ≤ s.length ≤ 20
Input format: A single string of digits.
Output format: All valid IPs, one per line, in the order generated.