LEETCODE: Restore IP Addresses
来源:互联网 发布:域名代理商哪个好 编辑:程序博客网 时间:2024/06/05 15:11
Given a string containing only digits, restore it by returning all possible valid IP address combinations.
For example:
Given "25525511135"
,
return ["255.255.11.135", "255.255.111.35"]
. (Order does not matter)
忍不住又做了一题!
class Solution {public: void getAddresses(vector<string> &results, string s, string temp, int segment) { if(s.length() < segment) return; if(segment == 1) { if(s.length() >= 2 && s[0] == '0') return; if(s.length() < 3 || (s.length() == 3 && s <= "255")) results.push_back(temp + "." + s); return; } string s0(s, 0, 1); if(s.length() - 1 <= (segment - 1) * 3) { string newstr = temp + (segment == 4 ? "" : "."); newstr += s0; getAddresses(results, s.substr(1, s.length() - 1), newstr, segment - 1); } if(s[0] == '0')return; string s1(s, 0, 2); if(s.length() - 2 <= (segment - 1) * 3) { string newstr = temp + (segment == 4 ? "" : "."); newstr += s1; getAddresses(results, s.substr(2, s.length() - 2), newstr, segment - 1); } if(s[0] == '0' && s[1] == '0')return; string s2(s, 0, 3); if(s.length() - 3 <= (segment - 1) * 3 && s2 <= "255") { string newstr = temp + (segment == 4 ? "" : "."); newstr += s2; getAddresses(results, s.substr(3, s.length() - 3), newstr, segment - 1); } } vector<string> restoreIpAddresses(string s) { if(s.length() < 3 || s.length() > 12) return vector<string>(); vector<string> results; string temp; getAddresses(results, s, temp, 4); return results; }};
0 0
- LeetCode: Restore IP Addresses
- LeetCode : Restore IP Addresses
- [LeetCode] Restore IP Addresses
- [LeetCode]Restore IP Addresses
- LeetCode:Restore IP Addresses
- LeetCode Restore IP Addresses
- [leetcode] Restore IP Addresses
- LeetCode:Restore IP Addresses
- [LeetCode] Restore IP Addresses
- LeetCode - Restore IP Addresses
- LeetCode | Restore IP Addresses
- 【leetcode】Restore IP Addresses
- Leetcode: Restore IP Addresses
- leetcode Restore IP Addresses
- leetcode Restore IP Addresses
- [LeetCode] Restore IP Addresses
- Leetcode: Restore IP Addresses
- [LeetCode] Restore IP Addresses
- LayoutTransition 容器布局动画
- ListView
- ExtJs 入门教程七[登陆窗体Demo:Login]
- ListView优化方案的几点解析
- hdu1892See you~
- LEETCODE: Restore IP Addresses
- 新的一年新的开始
- nyoj 25 A Famous Music Composer
- linux:关于Linux系统中 CPU Memory IO Network的性能监测
- C++使用默认参数
- POJ1679 The Unique MST【Kruskal】【次小生成树】
- Jquery<6>Jquery Ajax
- expdp/impdp 挂起处理
- 大家好 需要大家关注