题解 | #数字字符串转化成IP地址#

数字字符串转化成IP地址

https://www.nowcoder.com/practice/ce73540d47374dbe85b3125f57727e1e

class Solution:
    def restoreIpAddresses(self , s: str) -> List[str]:
        res = []
        i = 1
        n = len(s)
        
        while i < 4 and i < n - 2:
            j = i + 1
            while j < i + 4 and j < n - 1:
                k = j + 1
                while k < j + 4 and k < n:
                    if n - k > 3:
                        k += 1
                        continue
                    a = s[0:i]
                    b = s[i:j]
                    c = s[j:k]
                    d = s[k:]
                    if int(a) > 255 or int(b) > 255 or int(c) > 255 or int(d) > 255:
                        k += 1
                        continue
                    if (len(a) != 1 and a[0] == '0' 
                    or len(b) != 1 and b[0] == '0'
                    or len(c) != 1 and c[0] == '0'
                    or len(d) != 1 and d[0] == '0'): # 判断长度有前导零的情况
                        k += 1
                        continue
                    tmp = ''+a+'.'+b+'.'+c+'.'+d
                    res.append(tmp)
                    k += 1
                j += 1
            i += 1
        return res






全部评论

相关推荐

专心打鱼:互联网搬运工,贴子都要偷
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-05 10:13
已编辑
HHHHaos:让这些老登来现在秋招一下,简历都过不去
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务