File tree Expand file tree Collapse file tree 4 files changed +100
-0
lines changed Expand file tree Collapse file tree 4 files changed +100
-0
lines changed Original file line number Diff line number Diff line change
1
+ class Solution (object ):
2
+ def defangIPaddr (self , address ):
3
+ """
4
+ :type address: str
5
+ :rtype: str
6
+ """
7
+ address = address .replace ("." , "[.]" )
8
+ return address
Original file line number Diff line number Diff line change
1
+ class Solution (object ):
2
+ def corpFlightBookings (self , bookings , n ):
3
+ """
4
+ :type bookings: List[List[int]]
5
+ :type n: int
6
+ :rtype: List[int]
7
+ """
8
+ f = [0 for _ in range (n + 1 )]
9
+
10
+ for i , j , k in bookings :
11
+ f [i - 1 ] += k
12
+ f [j ] -= k
13
+ # print f
14
+ for i in range (1 , n + 1 ):
15
+ f [i ] += f [i - 1 ]
16
+ # print f
17
+ return f [:- 1 ]
Original file line number Diff line number Diff line change
1
+ # Definition for a binary tree node.
2
+ # class TreeNode(object):
3
+ # def __init__(self, x):
4
+ # self.val = x
5
+ # self.left = None
6
+ # self.right = None
7
+
8
+ class Solution (object ):
9
+ def delNodes (self , root , to_delete ):
10
+ """
11
+ :type root: TreeNode
12
+ :type to_delete: List[int]
13
+ :rtype: List[TreeNode]
14
+ """
15
+ if not root :
16
+ return []
17
+ to_delete = set (to_delete )
18
+
19
+ res = []
20
+
21
+ self .roots = []
22
+ if root .val not in to_delete :
23
+ self .roots = [root ]
24
+ else : #如果连根节点都要删掉
25
+ if root .left and root .left .val not in to_delete :
26
+ self .roots += [root .left ]
27
+ if root .right and root .right .val not in to_delete :
28
+ self .roots += [root .right ]
29
+
30
+ def dfs (node ):
31
+ if not node :
32
+ return
33
+
34
+ if node .left and node .left .val in to_delete : #左节点要删
35
+ dfs (node .left )
36
+ if node .left .left : #左节点的左节点还在,不需要删
37
+ self .roots += [node .left .left ]
38
+ if node .left .right : #左节点的右节点还在,不需要删
39
+ self .roots += [node .left .right ]
40
+
41
+ node .left = None
42
+
43
+ if node .right and node .right .val in to_delete :#右节点要删
44
+ dfs (node .right )
45
+ if node .right .left : #右节点的左节点还在,不需要删
46
+ self .roots += [node .right .left ]
47
+ if node .right .right : #右节点的右节点还在,不需要删
48
+ self .roots += [node .right .right ]
49
+
50
+ node .right = None
51
+
52
+ dfs (node .left )
53
+ dfs (node .right )
54
+
55
+ dfs (root )
56
+ return self .roots
57
+
58
+
Original file line number Diff line number Diff line change
1
+ class Solution (object ):
2
+ def maxDepthAfterSplit (self , seq ):
3
+ """
4
+ :type seq: str
5
+ :rtype: List[int]
6
+ """
7
+ # print self.depth("((()))")
8
+ res = [0 for _ in range (len (seq ))]
9
+ cnt = 0
10
+ for i , x in enumerate (seq ):
11
+ if x == "(" :
12
+ cnt += 1
13
+ res [i ] = cnt % 2
14
+ else :
15
+ res [i ] = cnt % 2
16
+ cnt -= 1
17
+ return res
You can’t perform that action at this time.
0 commit comments