Restore IP Addresses
2014-04-13 13:07
274 查看
class Solution { public: vector<string> restoreIpAddresses(string s) { //先给个暴力解 vector<string> ret; if(s.length()<4 || s.length()>12) return ret; int len=s.length(); string a,b,c,d; int a_len,b_len,c_len,d_len; for(a_len=1;a_len<=3;a_len++) { if(len-a_len < 3|| len-a_len >9) { continue; } a.insert(a.end(),s.begin(),s.begin()+a_len); if((a_len>=2 && a[0]=='0') || (a_len ==3 && atoi(a.c_str()) >255)) { a.clear(); continue; } for(b_len =1;b_len<=3;b_len++) { if(len-a_len-b_len < 2 || len-a_len-b_len>6) { continue; } b.insert(b.end(),s.begin()+a_len,s.begin()+a_len+b_len); if((b_len>=2 && b[0]=='0') || (b_len ==3 && atoi(b.c_str()) >255)) { b.clear(); continue; } for(c_len =1;c_len<=3;c_len++) { if(len-a_len-b_len-c_len < 1 || len-a_len-b_len-c_len > 3) { continue; } c.insert(c.end(),s.begin()+a_len+b_len,s.begin()+a_len+b_len+c_len); if((c_len>=2 && c[0]=='0') || (c_len ==3 && atoi(c.c_str()) >255)) { c.clear(); continue; } d_len=len-a_len-b_len-c_len; if(d_len<1 || d_len>3) { continue; } d.insert(d.end(),s.begin()+a_len+b_len+c_len,s.begin()+a_len+b_len+c_len+d_len); if((d_len>=2 && d[0]=='0') || (d_len==3 && atoi(d.c_str())>255)) { c.clear(); d.clear(); continue; } string unit; unit+=a; unit.push_back('.'); unit+=b; unit.push_back('.'); unit+=c; unit.push_back('.'); unit+=d; ret.push_back(unit); c.clear(),d.clear(); } b.clear(); } a.clear(); } return ret; } };
相关文章推荐
- [leedcode 93] Restore IP Addresses
- LeetCode-Restore IP Addresses<ERROR>
- Leetcode-Restore IP Addresses
- 【restore-ip-addresses】
- LeetCode题解:Restore IP Addresses
- Restore IP Addresses
- leetcode Restore IP Addresses
- leetcode[93] Restore IP Addresses
- [C++]LeetCode: 40 Restore IP Addresses
- Leetcode: Restore IP Addresses
- LeetCode: Restore IP Addresses
- LeetCode(93) Restore IP Addresses
- LeetCode - Restore IP Addresses
- Restore IP Addresses
- Restore IP Addresses
- leetcode -day29 Binary Tree Inorder Traversal & Restore IP Addresses
- 93:Restore IP Addresses【回溯】【字符串】
- leetcode - Restore IP Addresses
- 【LeetCode with Python】 Restore IP Addresses
- DFS Restore IP Addresses