IP提取
算法描述
- IP的格式通常是4个8位的二进制数字(0 ~ 255)表示,中间以点号隔开
- 输入为一串字符,只包含数字,不包含点号。
- 输出所有可能的IP
- IP中的任意一段都不可以0开头,例如1902426,可以输出1.90.24.26, 19.0.24.26, 190.2.4.26, 单不能输出19.02.4.26
参数定义
- 类名
IPConverter
- 方法
possibleAddresses
- 输入参数
string
- 输出
vector <string>
- 方法声明
vector <string> possibleAddresses(string ambiguousIP)
限制条件
ambiguousIP
包含[0,50]个字符ambiguousIP
中的每个字符在[0,9]之间
例子
- 输入
- IPConverter: “1902426”
- 输出
- { “1.90.24.26”, “1.90.242.6”, “19.0.24.26”, “19.0.242.6”, “190.2.4.26”, “190.2.42.6”, “190.24.2.6” }
测试实例
实例一
输入
- ”000”
输出
- { }
实例二
- 输入
- ”“
- 输出
- { }
- 输入
实例三
- 输入
- ”0186290”
- 输出
- { “0.18.62.90”, “0.186.2.90”, “0.186.29.0” }
- 输入
实例四
- 输入
- ”11111111”
- 输出
- { “1.1.111.111”, “1.11.11.111”, “1.11.111.11”, “1.111.1.111”, “1.111.11.11”, “1.111.111.1”, “11.1.11.111”, “11.1.111.11”, “11.11.1.111”, “11.11.11.11”, “11.11.111.1”, “11.111.1.11”, “11.111.11.1”, “111.1.1.111”, “111.1.11.11”, “111.1.111.1”, “111.11.1.11”, “111.11.11.1”, “111.111.1.1” }
- 输入
实例五
- 输入
- ”3082390871771742784899852251737850570843857369760”
- 输出
- { }
- 输入
实例六
- 输入
- ”256255255”
- 输出
- { “2.56.255.255”, “25.6.255.255”, “25.62.55.255” }
- 输入