Skip to content

Commit d6532ff

Browse files
committed
2019-07-07
1 parent 8ab4398 commit d6532ff

File tree

4 files changed

+100
-0
lines changed

4 files changed

+100
-0
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
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
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
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]
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
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+
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
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

0 commit comments

Comments
 (0)