leetcode Restore IP Address
来源:互联网 发布:和明星谈恋爱知乎 编辑:程序博客网 时间:2024/05/29 05:55
class Solution {public: inline int getlen(int digit){ return digit == 0 ? 1 : (((int)log10(digit)) + 1); } void dfs(const string& s, const int totlen, int index, int cur, int partnum,vector<string>& ret, string& tmpstr){ if(index >= totlen){ if(partnum == 4){ ret.push_back(tmpstr); return; } } if(partnum >= 4){ return; } for(int tmpidx = index; tmpidx < totlen; ++tmpidx){ cur = cur * 10 + s[tmpidx] - '0'; if(cur >= 0 && cur <= 255){ int originlen = tmpstr.length(); if(partnum != 0){ tmpstr += "."; } char line[5]; memset(line, 0, sizeof(line)); sprintf(line, "%d", cur); if(tmpidx - index + 1 == strlen(line)){ tmpstr += ((string)line); dfs(s, totlen, tmpidx + 1, 0, partnum + 1, ret, tmpstr); tmpstr.erase(originlen); } } else{ break; } } } vector<string> restoreIpAddresses(string s) { vector<string> ret; int len = s.length(); int cur = 0; string tmpstr = ""; dfs(s, len, 0, 0, 0, ret, tmpstr); return ret; }};
错误1:
每次向下dfs时,cur应重新置为0
错误2:
点分十进制中前导零的处理问题
0 0
- Leetcode Restore IP Address
- Leetcode: Restore IP Address
- [LeetCode] Restore IP Address
- LeetCode: Restore IP Address
- [leetcode] restore IP address
- leetcode Restore IP Address
- Leetcode Restore IP Address
- LeetCode:Restore IP Address
- [LeetCode] Restore IP Address [28]
- Leetcode(91) Restore IP Address
- Restore IP Address Leetcode Python
- leetcode restore ip address Java实现
- Restore IP address
- 5th IP address restore
- LeetCode: Restore IP Addresses
- LeetCode : Restore IP Addresses
- [LeetCode] Restore IP Addresses
- [LeetCode]Restore IP Addresses
- 常见的问题
- path环境变量
- classpath环境变量
- 冰点播放器V2.0发布
- float数据在内存中是怎么存储的
- leetcode Restore IP Address
- 说说
- 关键字
- 多线程技术中GCD与NSOperationQueue的区别
- 标识符
- 注释
- 常量
- 进制转换
- linux 命令之head