(M)Backtracking: 93. Restore IP Addresses
来源:互联网 发布:淘宝卖家售假被扣48分 编辑:程序博客网 时间:2024/06/16 05:13
这道题的意思是,给出一个字符串,写出这个字符串可以构成那些ip地址。IP地址有四个数字,每一个数字的范围都是[0,255],而且要注意没一个数都不能是0开头。
单独写一个函数判断一个字符串是不是合法的IP地址中的某一个数。
class Solution {public: vector<string> restoreIpAddresses(string s) { vector<string> res; backtracking(s, res, 4, ""); return res; } void backtracking(string s, vector<string>& res, int k, string str) { if(k == 0) { if(s.empty()) res.push_back(str); return; } for(int i = 1; i <= 3; ++i) { if(i <= s.size() && isvalid(s.substr(0, i))){ if(k == 1) backtracking(s.substr(i), res, k-1, str + s.substr(0, i)); else backtracking(s.substr(i), res, k-1, str + s.substr(0, i) + "."); } } } bool isvalid(string s) { if(s.size() == 0 || s.size() > 3 || (s.size() > 1 && s[0] == '0')) return false; int n = atoi(s.c_str()); return (n >= 0) && (n <= 255); }};
阅读全文
0 0
- (M)Backtracking: 93. Restore IP Addresses
- 93.Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- 93. Restore IP Addresses
- Effective C++ 3. Use const whenever posible
- 设计模式之二:Builder模式
- HDU-6019 MG loves gold
- ossec启动报ossec-remoted(1206): ERROR: Unable to Bind port错误解决方法
- Android中隐式跳转到系统设置界面(意图对象)
- (M)Backtracking: 93. Restore IP Addresses
- openjdk7 源码下载
- typora markdown 图片自动上传到图床
- CentOS7 yum 安装Mysql5.7
- Go:Hello World
- Qt之pro配置多个子工程/子模块
- RecyclerView的使用。
- 如何注册售电公司,需要多少钱,多长时间。
- Python strip lstrip rstrip使用方法