Dashboard Temp Share Shortlinks Frames API

HTMLify

day28.py
Views: 10 | Author: prakhardoneria
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class Solution:
    def generateIp(self, s):
        res = []
        n = len(s)
        
        if n < 4 or n > 12:
            return []
            
        def backtrack(start, path):
            if len(path) == 4:
                if start == n:
                    res.append(".".join(path))
                return
            
            for length in range(1, 4):
                if start + length > n:
                    break
                
                segment = s[start : start + length]
                
                if segment[0] == '0' and len(segment) > 1:
                    continue
                
                if int(segment) <= 255:
                    backtrack(start + length, path + [segment])
        
        backtrack(0, [])
        return res